Як визначати не спільні сервіси
Дата оновлення перекладу 2022-11-25
Як визначати не спільні сервіси
У сервіс-контейнері всі сервіси є спільними за замовчуванням. Це означає, що кожний раз, коли ви викликаєте цей сервіс, ви отримуватимете один і той же екземпляр. Зазвичай, це та поведінка, якої ви хочете, але у деяких випадках, ви можете захотіти завжди отримувати новий екземпляр.
Щоб отримувати новий екземпляр кожний раз, встановіть налаштування shared
як
false
у вашому визначенні сервісу:
- YAML
- XML
- PHP
1 2 3 4 5
# config/services.yaml
services:
App\SomeNonSharedService:
shared: false
# ...
Тепер, кожний раз, коли ви запитуєте AppBundle\SomeNonSharedService
з
контейнера, вам буде передано новий екземпляр.