用$mobile=(int)trim($_POST['mobile']);进行过滤.得到的数字变成10位的数字.不再是手机号.怎么解决长数字过滤问题
3条回答 默认 最新
nanjun520 2017-03-01 06:52关注上面说得对 考虑有正则表达式判断,你不需要转换为int处理啊
例如:
$mobile=$_POST['mobile'];
//下面的1便是手机的第一位数字必须为数字1
//[0-9]指后面的数字均为0~9的数字
//{9}这中间的9指的是手机号码除了第一位数外,其他要重复10次,刚好就是11位数了
if(!preg_match('/^1([0-9]{9})/',$mobile)) exit('您的手机号码不正确');
这个只是判断第一个为1
你还可以添加规则,现在的手机号码有哪些开头的等等本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报