Как определять необщие сервисы
Как определять необщие сервисы
В сервис-контейнере, все сервисы являются общими по умолчанию. Это означает, что каждый раз, когда вы вызываете этот сервис, вы будете получать один и тот же экземпляр. Обычно, это то поведение, которого вы и хотите, но в некоторых случаях, вы можете захотеть всегда получать новый экземпляр.
Чтобы получать новый экземпляр каждый раз, установите настройку shared
в
значение false
в вашем определении сервиса:
- YAML
- XML
- PHP
1 2 3 4 5
# app/config/services.yml
services:
AppBundle\SomeNonSharedService:
shared: false
# ...
Теперь, каждый раз, когда вы запрашиваете AppBundle\SomeNonSharedService
из
контейнера, вам будет передан новый экземпляр.