我想将供应商库注册为服务,例如doctrine,任何人都可以通过$container->get('doctrine')
访问。我希望以这种方式注册其他供应商,例如PhpExcel($container->get('phpexcel')
)。
答案 0 :(得分:1)
请参阅services.yml
中的liuggio/ExcelBundle文件parameters:
xls.phpexcel.class: PHPExcel
services:
xls.phpexcel:
class: %xls.phpexcel.class%
然后$container->get('xls.phpexcel');
答案 1 :(得分:0)
只要第三方类通过不自己实例化其依赖关系来尊重DI,您就可以将它们注册为服务,就像您自己的类一样。阅读Service Container chapter以获取有关如何执行此操作的更多信息。
答案 2 :(得分:0)
你应该使用一个工作包。找到可用于作曲家at packagist.org的所有捆绑包。 liuggio/ExcelBundle应该完成你想要的工作。安装后,您可以使用PHPExcel作为服务:
$excelService = $this->get('xls.service_xls5');