用PHP来验证Email是否正确
发布:smiling 来源: PHP粉丝网 添加日期:2013-12-10 09:39:28 浏览: 评论:0
当你在某个论坛上注册时,通常都有一个 e-mail 地址验证的功能,当你输入非法的一个格式时会出现某种错误提示信息的,我们可以使用下面的规则表达式:
ereg("^[a-zA-Z0-9_] @[a-zA-Z0-9-] .[a-zA-Z0-9-.] $]", $email);
但是上面这个式子的功能是只能检查字符串,不能进行输出。我们可以进一步利用这个式子来达到返回信息的功能:
- if (eregi("^[a-zA-Z0-9_] @[a-zA-Z0-9-] .[a-zA-Z0-9-.] $]", $email))
- {
- return FALSE;
- }
下面我们可以进一步来检测主机名,是不是存在:
- list($Username, $Domain) = split("@",$email);
- if(getmxrr($Domain, $MXHost))
- {
- return TRUE;
- }
- else
- {
- if(fsockopen($Domain, 25, $errno, $errstr, 30))
- {
- return TRUE;
- }
- else
- {
- return FALSE;
- }
- }
现在我们再把上面的两个功能用PHP组织起来构成一个函数:
- function checkEmail($email)
- { if(eregi("^[a-zA-Z0-9_] @[a-zA-Z0-9-] .[a-zA-Z0-9-.] $]", $email))
- {
- return FALSE;
- }
- list($Username, $Domain) = split("@",$email);
- if(getmxrr($Domain, $MXHost))
- {
- return TRUE;
- }
- else
- {
- if(fsockopen($Domain, 25, $errno, $errstr, 30))
- {
- return TRUE;
- }
- else
- {
- return FALSE;
- }
- }
- }
之后我们就可以利用这个函数来检测是否存在输入的一个Email了,举个例子:
- if(checkEmail(web@etoow.com) == FALSE)
- {
- echo "您输入的E_mail是不正确的.";
- }
- else
- {
- echo "输入的E_mail是正确的.";
- }
Tags: PHP 验证Email
相关文章
- ·php正则连接中文本程序(2013-11-12)
- ·php验证用户名是否以字母开头与验证密码(2013-11-13)
- ·PHP常用正则表达式汇总(2013-11-13)
- ·三分钟学会PHP正则表达式(2013-11-13)
- ·巧用PHP正则表达式判断IP地址(2013-11-13)
- ·php 判断中英文字符(2013-11-29)
- ·php用户注册时常用的一些检验函数总结(2014-01-05)
- ·php正则表达式验证邮箱(2014-01-05)
- ·php/js汉字正则表达式总结(2014-01-05)
- ·php中正则匹配用户密码(2014-01-06)
- ·php中ip地址 email格式 电话号码正则验证(2014-01-06)
- ·php如何对手机号码进行验证(2014-01-07)
- ·php 正则提取文章中的图片,并替换、移动图片目录(2014-01-07)
- ·PHP移除字符串超链接文本的正则表达式(2014-01-10)
- ·实例学习PHP中的正则表达式(2014-01-14)
- ·php 获得当前的脚本网址和相对路径转化成绝对路径正则(2014-01-15)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)