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类thinkphplibrary hinkvalidate.php的MAX方法 加上UTF8参数,$length = mb_strlen((string) $value,'utf8');

原文地址:https://www.cnblogs.com/fogwang/p/12026962.html