如果数组中的一组验证器失败,则Yii内置验证将返回无效
e.g。
array(
array('A', 'required'),
array('B', 'required')
)
如果A或B为空,将返回无效。 (和逻辑)
我想组合这些验证器,这样只有当所有单独的验证器返回无效(OR逻辑)时它才会返回无效。 只有在A和B都为空的情况下,上面的示例才会返回无效。
是否有通用的内置方式来执行此操作?
如果不是,我希望扩展库以处理类似以下内容:
array(
array('', 'COrValidator',
array('A', 'required'),
array('B', 'required')
)
)
答案 0 :(得分:0)
您可能想要创建一个AnyValidValidator,以便您可以执行以下操作:
array(
array('attribute1, attibute2', 'anyValid', array('required')),
);
的问题
array(
array('', 'COrValidator',
array('A', 'required'),
array('B', 'required')
)
)
是,如果没有对验证器功能进行重大修改,COrValidator验证器将不会应用于任何属性(未指定任何属性)。