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/3.2/Symfony/Component/DependencyInjection/ResettableContainerInterface.html