CRangeValidator的不足之处

目前CRangeValidator好像只能让其值在range的数组中,,如果我不想让值在这个数组中呢?出现的情况是 有系统保留字,我想让值不出现在保留字数组里才能通过验证,,即notIn 的情况

支持~ 搞多一个属性,配置是 in 还是 notin~ good idea!

就像我以前提出的validator里的on属性,是否也该添加一个notno属性,呵呵

这个有点不同~ scenario增加noton的话,逻辑会复杂很多~

很奇怪,

array(‘SITE_DOMAIN’,‘length’,‘max’=>60,‘min’=>2,‘message’ => ‘长度不符,2-20位!’),

array(‘SITE_DOMAIN’,‘in’,‘range’=>array(‘a’,‘b’,‘c’)),

竟然没有效果,

并一直 服务器端 验证失败

不知道array(‘SITE_DOMAIN’,‘in’,‘range’=>array(‘a’,‘b’,‘c’)),哪里错了?

Host Object

(

[FTP_USER] => dddd


[FTP_PASS] => ddd


[SITE_DOMAIN] => abc.


[YEAR] => 1


[MONTH] => 


[_errors:private] => Array


    (


        [SITE_DOMAIN] => Array


            (


                [0] => Site  Domain is not in the list.


            )





    )





[_validators:private] => CList Object


    (


        [_d:private] => Array


            (


                [0] => CRequiredValidator Object


                    (


                        [requiredValue] => 


                        [strict] => 


                        [attributes] => Array


                            (


                                [0] => FTP_USER


                                [1] => FTP_PASS


                                [2] => SITE_DOMAIN


                                [3] => YEAR


                            )





                        [message] => 此项不能为空


                        [skipOnError] => 


                        [on] => Array


                            (


                            )





                        [safe] => 1


                        [_e:private] => 


                        [_m:private] => 


                    )





                [1] => CStringValidator Object


                    (


                        [max] => 26


                        [min] => 2


                        [is] => 


                        [tooShort] => 


                        [tooLong] => 


                        [allowEmpty] => 1


                        [encoding] => 


                        [attributes] => Array


                            (


                                [0] => FTP_USER


                                [1] => FTP_PASS


                            )





                        [message] => 长度不符,2-20位


                        [skipOnError] => 


                        [on] => Array


                            (


                            )





                        [safe] => 1


                        [_e:private] => 


                        [_m:private] => 


                    )





                [2] => CStringValidator Object


                    (


                        [max] => 60


                        [min] => 2


                        [is] => 


                        [tooShort] => 


                        [tooLong] => 


                        [allowEmpty] => 1


                        [encoding] => 


                        [attributes] => Array


                            (


                                [0] => SITE_DOMAIN


                            )





                        [message] => 长度不符,2-20位!


                        [skipOnError] => 


                        [on] => Array


                            (


                            )





                        [safe] => 1


                        [_e:private] => 


                        [_m:private] => 


                    )





                [3] => CRangeValidator Object


                    (


                        [range] => Array


                            (


                                [0] => a


                                [1] => b


                                [2] => c


                                [3] => .


                            )





                        [strict] => 


                        [allowEmpty] => 1


                        [not] => 


                        [attributes] => Array


                            (


                                [0] => SITE_DOMAIN


                            )





                        [message] => 


                        [skipOnError] => 


                        [on] => Array


                            (


                            )





                        [safe] => 1


                        [_e:private] => 


                        [_m:private] => 


                    )





                [4] => CNumberValidator Object


                    (


                        [integerOnly] => 


                        [allowEmpty] => 1


                        [max] => 999999


                        [min] => 1


                        [tooBig] => 


                        [tooSmall] => 


                        [attributes] => Array


                            (


                                [0] => YEAR


                            )





                        [message] => 须是>0的数字


                        [skipOnError] => 


                        [on] => Array


                            (


                            )





                        [safe] => 1


                        [_e:private] => 


                        [_m:private] => 


                    )





            )





        [_c:private] => 5


        [_r:private] => 


        [_e:private] => 


        [_m:private] => 


    )





[_scenario:private] => 


[_e:private] => 


[_m:private] => 

)

alert(‘数据验证失败!’);