PHP 正则验证手机号和手机靓号规律
PHP做网站时,网站表单里会让用户填写手机号,为防止用户随意填写号码,所以需要进行手机号验证。
在网站制作过程中,可以使用PHP 正则验证手机号,验证代码如下:
/**
* PHP 正则验证手机号
*/
public function regular()
{
$rules = '/^1[3-9]\d{9}$/';
$val = '138569855000';
if(preg_match($rules,$val)){
echo '正确';
}else{
echo '错误';
}
}
上面的代码就可以验证用户填写的值是不是一个正确的手机号。但在一些手机靓号网站上,还有更复杂的运用。如要检测手机号的规律,是不是有同号,有连号等靓号等。这样就需要使用PHP验证手机靓号规律。
//代码来源:学做网站论坛 https://www.xuewangzhan.net/
//-----AAA类型判断
if(preg_match('#([\d])\1{2}$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'AAA';
}
//-----AAAA类型判断
if(preg_match('#([\d])\1{3}$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'AAAA';
}
//-----ABC类型判断
if(preg_match('#(123|234|345|456|567|678|789|012)$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'ABC';
}
//-----ABCD类型判断
if(preg_match('#(1234|2345|3456|4567|5678|6789|0123)$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'ABCD';
}
//-----AAAB类型判断
if(preg_match('#(\d)\1\1((?!\1)\d)$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'AAAB';
}
//-----ABAB类型判断
if(preg_match('#(\d)(\d)\1((?!\1)\2)$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'ABAB';
}
//-----AABB类型判断
if(preg_match('#(\d)\1(\d)((?!\1)\2)$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'AABB';
}
//-----ABCDABCD类型判断
if(preg_match('#([\d]{4})\1$#', $data[$i]['numbers'])){
$data[$i]['types'] = 'ABCDABCD';
}
上面的代码可以验证用户填写的手机号码是不是有靓号规律了,这种PHP验证在手机选号网站制作中经常用到。