laravel5.1 验证规则 alpha 对中文无效?

laravel5.1 alpha文档中写

验证字段值是否仅包含字母字符。

可是我输入中文,并没有报错,难道laravel默认中文也是字母

阅读 4.8k
1 个回答

这其实不是laravel的问题;

根据源码

protected function validateAlpha($attribute, $value) {
    return is_string($value) && preg_match('/^[\pL\pM]+$/u', $value); 
}

可以看到,使用的是Unicode进行匹配;

在来看下php手册中的说明

php

以至于将中文Unicode后是怎么匹配上L的,如果有人知道,先感谢,请告知!!

题主可以将正则修改一下来达到目的

return is_string($value) && preg_match('/^[a-zA-Z]+$/u', $value); 
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题