Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在Laravel中扩展验证器类_Php_Laravel_Laravel 4 - Fatal编程技术网

Php 在Laravel中扩展验证器类

Php 在Laravel中扩展验证器类,php,laravel,laravel-4,Php,Laravel,Laravel 4,我想在Laravel中扩展验证器类。然而,在所有示例中,make方法都用于创建一个新实例,而我在中找不到该实例。如何重写此方法?构造函数需要一个TranslatorInterface实例,因此这似乎不是一个选项?实际使用了make方法 如果要扩展此方法,则需要交换IoC绑定。只需在容器中重载绑定即可 App::bindShared('validator', function($app) { $validator = new \Your\Validator\Factory($app['tr

我想在Laravel中扩展验证器类。然而,在所有示例中,make方法都用于创建一个新实例,而我在中找不到该实例。如何重写此方法?构造函数需要一个
TranslatorInterface
实例,因此这似乎不是一个选项?

实际使用了
make
方法

如果要扩展此方法,则需要交换IoC绑定。只需在容器中重载绑定即可

App::bindShared('validator', function($app)
{
    $validator = new \Your\Validator\Factory($app['translator'], $app);

    if (isset($app['validation.presence']))
    {
        $validator->setPresenceVerifier($app['validation.presence']);
    }

    return $validator;
});

听起来不错,但我不太明白。工厂是什么($app['translator',$app)?因此,您需要创建自己的
工厂
类来扩展
illighted\Validator\Factory
。这些构造函数注入的参数是必需的。基本上,你在上面看到的是从。