是否可以在Symfony中定义多个后验证器?

时间:2011-10-05 15:24:31

标签: php forms validation symfony-1.4

我需要以Symfony形式执行多次后验证。我第一次遇到这个问题,我写了这个:

$this->validatorSchema->setPostValidator(
  new sfValidatorCallback(array(
    'callback' => array($this, 'checkStatusHasMethod'))
));

因为我只是想检查某种情况。

但随着应用程序的增长,我现在需要执行额外的检查。我想用不同的方法隔离每个验证,而不是使用一个大的checkX方法来保存所有内容。

是否可以将sfPostValidator与多个方法相关联,或者在sfPostValidator中创建多个validatorSchema个实例?

谢谢!

2 个答案:

答案 0 :(得分:1)

尝试mergePostValidator()(或类似的,不记得确切的方法名称)

答案 1 :(得分:0)

据我记得,有一个名为sfValidatorAnd()的验证器允许你这样做。

编辑:你可以这样做:

new sfValidatorAnd(
    array(
        new sfValidatorString(),
        new sfValidatorRegex(),
    )
);