如何在CakePHP中使用空间正则表达式模型验证进行字母数字处理?

时间:2009-05-09 08:52:26

标签: php regex validation cakephp

我有一个用户注册表单,我只希望用户指定他们的名字和姓氏(即Donalg Doonsberry)。如果用户没有以这种方式提供他们的名字,则输入将被拒绝。我认为这样的东西适用于我在cakephp中的正则表达式用户验证:

  'name'=>array('Name has to be comprised of letters.
                '=>array('rule'=>array('custom', '/[A-Za-z ]+/')
           )),

3 个答案:

答案 0 :(得分:6)

你必须小心验证名字......怎么样:

  • Donalg McDonald< - 资本中间的一句话
  • Donalg Fooble-Whiffery< - hyphenated
  • DonalgDéénsbnérry-McDonald Sr. 3rd< - 你明白了

以您指定的格式验证名称:

/[A-Z][a-z]+ [A-Z][a-z]+/

稍微宽松一点:

/([\w.-]+ )+[\w+.-]/

答案 1 :(得分:0)

就个人而言,我不打算使用名字/姓氏验证。你只能验证它们的长度(蛋糕中有一个内置的验证规则)并确保你输入“allowEmpty”=>是的,如果这就是你想要的。

答案 2 :(得分:0)

我使用下面的代码验证带有alphaNumeric和空格的字段。

'rule1' = array(
   'rule' => array('custom','/([\w.-]+ )+[\w+.-]/'),
   'required' => true,
   'message' => 'Required field.'
)

我希望能帮助你。