如何使用额外的参数解决laravel容器中的类?
这很完美,没有任何注册:
class myClass
{
public function __construct(Interf1 $i1, Interf2 $i2)
{
//some stuff
}
}
$mc = app()->make('myClass');
如果你需要这样的话会发生什么:
class myClass
{
public function __construct(Interf1 $i1, Interf2 $i2, $x, $y)
{
//some stuff
}
}
是否有类似的选项:
$ mc = app() - > make(' myClass',[10,20]);
或
$ mc = app() - > make(' myClass') - > with(10,20);
我知道我可以使用setter,但那不是重点..
答案 0 :(得分:0)
是的,它正是您已编写的第一个版本,但是您错过了必须与构造函数中的参数匹配的键:
$mc = app()->make('myClass',['x' => 10, 'y' => 20]);