CakePHP alphaNumeric允许使用非英文符号

时间:2012-03-26 02:09:34

标签: php cakephp

如果我只想验证英文字母,我该怎么办?

3 个答案:

答案 0 :(得分:2)

创建自己的规则?

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

http://book.cakephp.org/1.3/view/1179/Custom-Validation-Rules

答案 1 :(得分:1)

http://www.wiseguysonly.com/2009/11/27/a-workaround-for-the-cakephp-alphanumeric-issue/。该文章中的人有一个不同但相关的问题,他们的解决方案与您需要的解决方案相同。

基本思想是使用自定义正则表达式。改变这个:

'rule' => 'alphaNumeric'

对此:

'rule' => array('custom', '/^[a-z0-9]*$/i')

这也应该有效:

'rule' => '/^[a-z0-9]*$/i'

有关自定义正则表达式验证的官方文档位于http://book.cakephp.org/view/1179/Custom-Validation-Rules#Custom-Regular-Expression-Validation-1180

答案 2 :(得分:1)

改为使用regex as the rule