我一直在使用 PHP-DI,我想询问是否有一种方法可以自动将变量注入各种类方法,即使用自动装配。
谢谢
我一直在使用 PHP-DI,我想询问是否有一种方法可以自动将变量注入各种类方法,即使用自动装配。
谢谢
您可以使用注释,但这意味着您必须注释每个方法,因此它可能不像您希望的那样“自动”。
您还可以使用通配符创建定义:
return [
'MyProject\Controller\*' => DI\object()
->method('setSomething', DI\get('Foo')),
];
但老实说,我建议不要这样做,而是手动编写注入。当 6 个月后重新阅读代码时,或者当同事加入项目时,这会更加明确和容易理解。