其他分享
首页 > 其他分享> > TP5.0.24 验证器内置规则中max 如果输入中文 验证长度错误的问题

TP5.0.24 验证器内置规则中max 如果输入中文 验证长度错误的问题

作者:互联网

验证器 中需要验证最大字符数,例如

protected $rule = [
'name' => 'require|max:50'
];
protected $message = [
'name.require' => '分类名称必须填写',
'name.max' => '分类名称最多不能超过50个字符',
];

 

'name' => 'require|max:50', 已经定义最大50个字符,但是输入中文的时候 不到20个字符就说字符超过了50

解决方法:

 

修改底层VALIDATE类thinkphp\library\think\validate.php的MAX方法 加上UTF8参数,$length = mb_strlen((string) $value,'utf8');

标签:24,TP5.0,name,验证,max,require,50,个字符
来源: https://www.cnblogs.com/fogwang/p/12026962.html