代码如下
function funcMtel($str)//手机号码正则表达试
{
return (preg_match("/(?:13d{1}|15[03689])d{8}$/",$str))?true:false;
}
测试
18678785887
返回为
false
原因分析,查看了发现上面正则只能验证以13,15开头的,自然18开头的是不可以用的
修改后
代码如下
function funcMtel($str)//手机号码正则表达试
{
return (preg_match("/(?:1[3|4|5|8]d{1}|15[03689])d{8}$/",$str))?true:false;
}
测试
18678785887
返回为
true
这样就成功了,
总结经验:
像手机号这类都会不断更新号码段了,我们在写函数时把它写成公共函数,这样就可以解决这个问题了。
http://www.bkjia.com/PHPjc/371797.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/371797.htmlTechArticle代码如下 function funcMtel($str)//手机号码正则表达试 { return (preg_match(/(?:13d{1}|15[03689])d{8}$/,$str))?true:false; } 测试 18678785887 返回为 false 原因分析...
Stellungnahme:Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn