在阅读了各种帖子后,我决定不使用 REGEX 来检查电子邮件是否有效,而是简单地使用 PHP 内置的 filter_var 函数。它似乎工作正常,直到它开始告诉我一封电子邮件无效,因为我里面有一个号码。
ie [电子邮件受保护]有效,同时[电子邮件受保护]没有。
我是否遗漏了什么或者是filter_var($email, FILTER_VALIDATE_EMAIL)
真的很无效吗?
PHP 5.3.3 过滤器代码中使用的正则表达式基于 Michael Rushton 的博客电子邮件地址验证。它似乎确实适用于您提到的情况。
您还可以查看其中的一些选项比较电子邮件地址验证正则表达式(当前 PHP 中使用的正则表达式是经过测试的其中之一)。
然后你可以选择一个你更喜欢的正则表达式,并在调用中使用它preg_match()
.
或者,您可以采用正则表达式并替换文件 PHP/ext/filter/logic_filter.c 中的函数php_filter_validate_email()
,并重建 PHP。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)