wil*_*fun 32 php email-validation
在阅读各种帖子后,我决定不使用REGEX检查电子邮件是否有效,只需使用PHP内置的filter_var函数.它似乎工作正常,直到它开始告诉我一封电子邮件无效,因为我有一个号码.
ie name@domain.com工作,而name2@domain.com没有.
我错过了什么或filter_var($email, FILTER_VALIDATE_EMAIL)真的非常无效?
Bil*_*win 34
PHP 5.3.3过滤器代码中使用的正则表达式基于Michael Rushton关于电子邮件地址验证的博客.它似乎适用于你提到的情况.
您还可以查看比较电子邮件地址验证正则表达式中的一些选项(当前在PHP中使用的正则表达式是其中之一).
然后你可以选择你更喜欢的正则表达式,并在调用时使用它preg_match().
或者你可以使用regexp并替换文件PHP/ext/filter/logical_filter.c中的那个,函数php_filter_validate_email()和重建PHP.