cakephp学习之单字段多规则校验

       cakephp学习之单字段多规则校验

     对任何校验来说,数据校验都是非常重要的; cake 框架已近为我们封装好了所常用的校验规则,好了,体会一下吧,下面来校验一下‘ user 不为空、唯一性、英数字、长度限制、最长位数。示例代码如下所示:

 

'user' => array(
                'notempty' => array(
                            'rule'      => 'notEmpty',
                            'message'   => 'This field cannot be left blank.',
                            'last'      => 'true'
                 ),
                'unique' => array(
                             'rule' => array('isUnique'),
                             'message' => ' this value has existed.',
                 ),
                'alphanumeric' => array(
                              'rule' => array('alphaNumeric'),
                              'message' => 'Only alphabets and numbers allowed',
                              'required' => true
                 ),
                'between' => array(
                               ‘rule’ => array('between', 5, 15),
                               'message' => ‘Between 5 to 15 charachers’
                 ),
                 'user-1' => array(
                                'rule' => array('maxlength',32),
                                'message' => ' this value cannot beyond 32 characters .'
                 )
     ) 
 

 

 附: 

 

         ‘required’ => true, 字段必须出现 在 data 数组中;

       ‘last’ => true, 首先要显示的错误信息( 情况下 CakePHP 会 使用 它声明的所有校 验规则进 行 校 ,并且返回最后一个失 错误 信 息。但如果某 规则 last 置为true 但它又校 该规则 错误 信 息会被返回,而其它未被校 规则则 不会 继续 下 去。

 

        有时 'rule' => array('alphaNumeric'), 不能过滤掉汉字,不知是何原因,这时可以考虑自定义校验规则,可以写为: 'rule' => array('custom', '/^[A-Za-z0-9]+$/'),

         还可以校验 email date 等等,在此不再赘述。

参考资料:http://book.cakephp.org/cn/view/1143/Data-Validation

 

 

 

你可能感兴趣的:(框架,cakephp)