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条)

报告相同问题?

悬赏问题

  • ¥15 Coze智能助手搭建过程中的问题请教
  • ¥15 12864只亮屏 不显示汉字
  • ¥20 三极管1000倍放大电路
  • ¥15 vscode报错如何解决
  • ¥15 前端vue CryptoJS Aes CBC加密后端java解密
  • ¥15 python随机森林对两个excel表格读取,shap报错
  • ¥15 基于STM32心率血氧监测(OLED显示)相关代码运行成功后烧录成功OLED显示屏不显示的原因是什么
  • ¥100 X轴为分离变量(因子变量),如何控制X轴每个分类变量的长度。
  • ¥30 求给定范围的全体素数p的(p-2)/p的连乘积值
  • ¥15 VFP如何使用阿里TTS实现文字转语音?