如何通过symfony2回调验证器参数?

时间:2012-02-20 13:47:29

标签: symfony

如何将symfony2回调验证器传递给参数?我需要从参数ini中传递一个值。

1 个答案:

答案 0 :(得分:2)

此链接Symfony2 - How to use Entity variables in CallbackValidator?直接解决您的问题。基本上'use'指令可以传递变量:

    ->addValidator(new CallbackValidator(function($form) use($user)

但是,当传递多个参数时,我发现只需创建一个实现FormValidatorInterface并使用它的验证器类就更容易了:

class UserNameValidator implements FormValidatorInterface
{
    public function __construct($em)
    {
        $this->em = $em;
    }
    public function validate(FormInterface $form)
    {

我甚至会把它作为服务,所以我不必担心构建它。