ResettableContainerInterface
интерфейс ResettableContainerInterface реализует ContainerInterface
ResettableContainerInterface определяет дополнительную функциональность сброса для контейнеров, позволяя освобождать общие сервисы, когда контейнер больше не нужен.
Методы
| set(string $id, object $service, string $scope = self::SCOPE_CONTAINER) Устанавливает сервис. | из ContainerInterface | |
| object | get(string $id, int $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE) Получает сервис. | из ContainerInterface |
| bool | has(string $id) Возвращает true, если данный сервис определен. | из ContainerInterface |
| mixed | getParameter(string $name) Получает параметр. | из ContainerInterface |
| bool | hasParameter(string $name) Проверяет, существует ли параметр. | из ContainerInterface |
| setParameter(string $name, mixed $value) Устанавливает параметр. | из ContainerInterface | |
| enterScope(string $name) устаревший Входит в заданный контекст. | из ContainerInterface | |
| leaveScope(string $name) устаревший Выходит из текущего контекста и возвращается в родительский контекст. | из ContainerInterface | |
| addScope(ScopeInterface $scope) устаревший Добавляет контекст в контейнер. | из ContainerInterface | |
| bool | hasScope(string $name) устаревший Есть ли в контейнере данный контекст? | из ContainerInterface |
| bool | isScopeActive(string $name) устаревший Определяет, активен ли заданный контекст в настоящее время. | из ContainerInterface |
| reset() Сбрасывает общие сервисы из контейнера. |
Детали
set(string $id, object $service, string $scope = self::SCOPE_CONTAINER)
Устанавливает сервис.
Примечание: параметр $scope устарел с версии 2.8 и будет удален в 3.0.
Параметры
| string | $id | Идентификатор сервиса |
| object | $service | Экземпляр сервиса |
| string | $scope | Контекст сервиса |
object get(string $id, int $invalidBehavior = self::EXCEPTION_ON_INVALID_REFERENCE)
Получает сервис.
Параметры
| string | $id | Идентификатор сервиса |
| int | $invalidBehavior | Поведение при отсутствии сервиса |
Возвращаемое значение
| object | Соответствующий сервис |
Исключения
| ServiceCircularReferenceException | При обнаружении циклической ссылки |
| ServiceNotFoundException | При отсутствии сервиса |
См. также
| Ссылка |
bool has(string $id)
Возвращает true, если данный сервис определен.
Параметры
| string | $id | Идентификатор сервиса |
Возвращаемое значение
| bool | true, если сервис определен, иначе false |
mixed getParameter(string $name)
Получает параметр.
Параметры
| string | $name | Имя параметра |
Возвращаемое значение
| mixed | Значение параметра |
Исключения
| InvalidArgumentException | если параметр не определен |
bool hasParameter(string $name)
Проверяет, существует ли параметр.
Параметры
| string | $name | Имя параметра |
Возвращаемое значение
| bool | Присутствует ли параметр в контейнере |
setParameter(string $name, mixed $value)
Устанавливает параметр.
Параметры
| string | $name | Имя параметра |
| mixed | $value | Значение параметра |
enterScope(string $name) устаревший
устаревший
Входит в заданный контекст.
Параметры
| string | $name |
leaveScope(string $name) устаревший
устаревший
Выходит из текущего контекста и возвращается в родительский контекст.
Параметры
| string | $name |
addScope(ScopeInterface $scope) устаревший
устаревший
Добавляет контекст в контейнер.
Параметры
| ScopeInterface | $scope |
bool hasScope(string $name) устаревший
устаревший
Есть ли в контейнере данный контекст?
Параметры
| string | $name |
Возвращаемое значение
| bool |
bool isScopeActive(string $name) устаревший
устаревший
Определяет, активен ли заданный контекст в настоящее время.
Однако, он не проверяет, действительно ли контекст существует.
Параметры
| string | $name |
Возвращаемое значение
| bool |
reset()
Сбрасывает общие сервисы из контейнера.
Контейнер не предназначен для повторного использования после сброса в обычном рабочем процессе. Этот метод предназначен для освобождения ссылок для подсчета ссылок. Последующий вызов ContainerInterface::get создаст новый экземпляр общего сервиса.
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/2.8/Symfony/Component/DependencyInjection/ResettableContainerInterface.html