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

Bob*_*zza 4 php email

当前代码我用来获取电子邮件后缀

$emailarray  = explode('@',$email_address);
$emailSuffix = $emailarray[1];
Run Code Online (Sandbox Code Playgroud)

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

Cze*_*ogy 10

更短:D

$emailSuffix = end(explode('@', $email_address));
Run Code Online (Sandbox Code Playgroud)

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

编辑

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

$a = explode('@', $email_address);
$foo = $a[1];
Run Code Online (Sandbox Code Playgroud)

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

它不符合严格的标准:

严格标准:只应通过引用传递变量

EDIT2

$foo = substr($email_address, strpos($email_address, '@'));
Run Code Online (Sandbox Code Playgroud)

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