You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改PHP注册功能手机号正则校验规则,将10位限制改为8位?

错误原因

你之前的修改存在规则错误:[0-7]{8}中的[0-7]限制了仅能输入0-7的数字,不符合手机号允许使用0-9全部数字的要求,只需要修改长度参数即可。原正则里的+属于冗余规则,也可以同步删除简化校验逻辑。

正确修改方案

需要同步修改两处代码的正则规则与提示文本:

  1. 手机号校验报错逻辑修改为:
if(!preg_match("/^[0-9]{8}$/", $_mobile_number)) {
    $_mobileErr = '<div class="alert alert-danger">
                    仅允许输入8位手机号。
                   </div>';
}
  1. 关联校验逻辑修改为:
if( (filter_var($_email, FILTER_VALIDATE_EMAIL)) && 
    (preg_match("/^[0-9]{8}$/", $_mobile_number))
)

可选补充

如果前端表单的手机号输入框设置了maxlength="10"属性,也同步修改为maxlength="8"即可避免用户输入超出长度。

内容的提问来源于stack exchange,提问作者Xin_Naz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 04:48:04