加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

是否有更有效的方式来获取电子邮件后缀而不是爆炸? (PHP)

发布时间:2020-12-13 22:08:14 所属栏目:PHP教程 来源:网络整理
导读:当前代码我用来获取电子邮件后缀 $emailarray = explode('@',$email_address);$emailSuffix = $emailarray[1]; 必须有一个更有效的功能.也许使用substr()的东西? 解决方法 短: $emailSuffix = end(explode('@',$email_address)); 但我认为它不会比那更有效
当前代码我用来获取电子邮件后缀

$emailarray  = explode('@',$email_address);
$emailSuffix = $emailarray[1];

必须有一个更有效的功能.也许使用substr()的东西?

解决方法

短:

$emailSuffix = end(explode('@',$email_address));

但我认为它不会比那更有效.正则表达式可能更慢.

编辑

我做了一些测试,虽然这个版本比使用它快3倍

$a = explode('@',$email_address);
$foo = $a[1];

if (preg_match('~^.+@(.+)$~',$email_address,$reg))
  $foo = $reg[1];

它不符合严格的标准:

Strict Standards: Only variables should be passed by reference

EDIT2

$foo = substr($email_address,strpos($email_address,'@'));

与结束(爆炸(.))方法一样快,所以我建议一个.请参阅rayman86的回答和评论.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读