viqecel 2017-03-01 05:48 采纳率: 100%
浏览 1196
已采纳

11位的手机号码怎么进行php安全过滤

用$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
    你还可以添加规则,现在的手机号码有哪些开头的等等

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?