本篇文章主要给大家介绍PHP验证邮箱格式的两种实现方法。
在网站开发过程中,有的网站可能需要实现用户注册功能。那么用户注册可以是手机号码或者邮箱,而通过邮箱注册往往会需要对邮箱格式进行检查验证,防止网站被恶意注册。
下面我们就通过简单的代码实例为大家介绍两种PHP判断邮箱格式的两种方法。
方法一:通过eregi 函数
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,则表示是正确的邮箱格式。
注意:eregi只能在PHP4,PHP5下使用。
方法二:通过preg_match函数
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知识,也可以关注PHP中文网PHP视频教程,欢迎大家来学习参考!
Atas ialah kandungan terperinci PHP怎么验证邮箱格式是否正确?(图文+视频). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!