CakePHP -我可以$验证一个字段,要求它没有空格?(它可以有下划线和连字符等)


CakePHP - Can I $validate a field to require it to not have spaces? (it CAN have underscores and hyphens..etc)

在CakePHP的模型中,我可以$验证一个字段,要求它没有空格或其他特殊字符吗?

具体来说,我希望他们为他们的在线文件夹键入一个名称-所以它可以有连字符,下划线等,但不能有问号,空格等

使用此作为参考:http://book.cakephp.org/view/1179/Custom-Validation-Rules

var $validate = array(
'login' => array(
    'rule' => '/^[a-z0-9]{3,}$/i',  
    'message' => 'Only letters and integers, min 3 characters'
));

你可以设置你的规则为/^[a-z0-9_'-'.]+$/i(正则表达式),你只需要添加你想要的额外字符。

不确定您是否使用正则表达式,但这基本上表示整个字符串^...$必须仅包含字母,数字,下划线,连字符(转义),句点(转义可能不必要,但可能匹配任何没有它的字符)。/i表示不区分大小写。+表示您需要一个或多个这些字符才能有效。

(未经测试,但应该足够简单)