代碼如下
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
這樣就成功了,
總結經驗:
像手機號這類都會不斷更新號碼段了,我們在寫函數時把它寫成公共函數,這樣就可以解決這個問題了。