在网站开发过程中,有的网站可能需要实现用户注册功能。那么用户注册可以是手机号码或者邮箱,而通过邮箱注册往往会需要对邮箱格式进行检查验证,防止网站被恶意注册。
下面我们就通过简单的代码实例为大家介绍两种PHP判断邮箱格式的两种方法。
eregi :不区分大小写的正则表达式匹配。
<?PHP function validateEmail($email) { // eregi 从PHP5往后去就被废弃了 if (@eregi('^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*$', $email)) { return true; } else { return false; } }
这里我们定义了一个validateEmail方法,通过eregi匹配第一个参数和第二个参数是否相同,以此来判断邮箱格式是否正确。
eregi()中的第一个参数表示定义的邮箱正则表达式,第二个参数则是我们输入的字符串也就是邮箱。
var_dump(validateEmail('244'));
浏览器访问结果如下:
如图返回值为false,说明邮箱格式不正确。
再输入如下内容测试:
var_dump(validateEmail('244@qq.com'));
结果为:
如图返回值为true,则表示是正确的邮箱格式。
preg_match :执行匹配正则表达式
<?PHP function checkEmail($email) { $pregEmail = /([a-z0-9]*[-_\.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?/i; return preg_match($pregEmail, $email); }
同样,用preg_match函数匹配两个参数,来判断邮箱格式是否正确。
这里我们也可以测试下:
var_dump(checkEmail('244@qq.com'));
结果如下:
如图,当我们输入正确的邮箱格式时,返回值为1;
var_dump(checkEmail('244'));
当邮箱格式不匹配时,此时返回值为0,如下图:
注意:preg_match可以在PHP 4, PHP 5, PHP 7下使用。
本篇文章就是关于PHP验证邮箱格式的两种方法介绍,其中涉及到的正则表达式方面的知识,大家可以参考编程之家正则表达式手册
想要了解更多PHP知识,也可以关注编程之家PHP教程,欢迎大家来学习参考!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。