首页 > 技术 > 正文

PHP怎么验证邮箱格式是否正确?
2018-09-26 14:54:45   来源:灰灰   评论:0 点击:

本篇文章主要给大家介绍PHP验证邮箱格式的两种实现方法。在网站开发过程中,有的网站可能需要实现用户注册功能。那么用户注册可以是手机号
本篇文章主要给大家介绍PHP验证邮箱格式的两种实现方法。

 

在网站开发过程中,有的网站可能需要实现用户注册功能。那么用户注册可以是手机号码或者邮箱,而通过邮箱注册往往会需要对邮箱格式进行检查验证,防止网站被恶意注册。

下面我们就通过简单的代码实例为大家介绍两种PHP判断邮箱格式的两种方法。

方法一:通过eregi 函数

eregi :不区分大小写的正则表达式匹配。

1
2
3
4
5
6
7
8
9
10
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()中的第一个参数表示定义的邮箱正则表达式,第二个参数则是我们输入的字符串也就是邮箱。

我们可以调用这个方法,输入如下内容进行测试:

1
var_dump(validateEmail('244'));

浏览器访问结果如下:


bool(false)
 

如图返回值为false,说明邮箱格式不正确。

再输入如下内容测试:

1
var_dump(validateEmail('244@qq.com'));

结果为:


bool(true)
 

如图返回值为true,则表示是正确的邮箱格式。

注意:eregi只能在PHP4,PHP5下使用。

方法二:通过preg_match函数

preg_match :执行匹配正则表达式

1
2
3
4
5
6
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函数匹配两个参数,来判断邮箱格式是否正确。

这里我们也可以测试下:

1
var_dump(checkEmail('244@qq.com'));

结果如下:


D:\phpStudy\WWW\tips\demo27.php:24:int 1
 

如图,当我们输入正确的邮箱格式时,返回值为1;

1
var_dump(checkEmail('244'));

当邮箱格式不匹配时,此时返回值为0,如下图:


D:\phpStudy\WWW\tips\demo27.php:24:int 0
 

注意:preg_match可以在PHP 4, PHP 5, PHP 7下使用。

本篇文章就是关于PHP验证邮箱格式的两种方法介绍

相关热词搜索:邮箱 格式

上一篇:php 遍历循环文件公用接口
下一篇:用css改变png图片的颜色

分享到: 收藏
下面的评论可以用QQ或者微信微博等账号快速登录喔!灰灰等待您的评论......
看了下还是不好看,那再加一个......
看了下还是不好看,以后在这价格留言功能什么的可能会好些......