如何定义非共享服务吗
编辑该页面如何定义非共享服务吗
服务容器,所有服务默认是共享的。这意味着每次检索服务,你会得到的相同实例。这通常是你想要的行为,但在某些情况下,您可能希望总是得到一个新实例。
为了总是一个新实例,设置共享
设置为假
在你的服务定义:
- YAML
- XML
- PHP
1 2 3 4 5
#配置/ services.yaml服务:App \ SomeNonSharedService:共享:假#……
1 2 3 4
< !——配置/服务。xml - - ><服务><服务id=“应用程序\ SomeNonSharedService”共享=“假”/ >< /服务>
1 2 3 4 5 6 7 8 9 10 11
/ /配置/ services.php名称空间ob娱乐下载\组件\DependencyInjection\加载程序\配置器;使用应用程序\SomeNonSharedService;返回函数(ContainerConfigurator美元containerConfigurator){美元服务=美元containerConfigurator- >服务();美元服务- >集(SomeNonSharedService::类)- >份额(假);};
现在,每当你请求App \ SomeNonSharedService
从容器中,您将通过一个新的实例。
这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。