Контейнер
интерфейс Контейнер реализует ContainerInterface (Просмотр исходного кода)
Методы
| bool | bound(string $abstract) Определить, был ли связан данный абстрактный тип. | |
| void | alias(string $abstract, string $alias) Создать псевдоним для типа. | |
| void | tag(array|string $abstracts, array|mixed $tags) Присвоить набор тегов данному связыванию. | |
| iterable | tagged(string $tag) Разрешить все привязки для данного тега. | |
| void | bind(string $abstract, Closure|string|null $concrete = null, bool $shared = false) Зарегистрировать привязку в контейнере. | |
| void | bindIf(string $abstract, Closure|string|null $concrete = null, bool $shared = false) Зарегистрировать привязку, если она еще не зарегистрирована. | |
| void | singleton(string $abstract, Closure|string|null $concrete = null) Зарегистрировать общую привязку в контейнере. | |
| void | singletonIf(string $abstract, Closure|string|null $concrete = null) Зарегистрировать общую привязку, если она еще не зарегистрирована. | |
| void | scoped(string $abstract, Closure|string|null $concrete = null) Зарегистрировать привязку с областью видимости в контейнере. | |
| void | scopedIf(string $abstract, Closure|string|null $concrete = null) Зарегистрировать привязку с областью видимости, если она еще не зарегистрирована. | |
| void | extend(string $abstract, Closure $closure) «Расширить» абстрактный тип в контейнере. | |
| mixed | instance(string $abstract, mixed $instance) Зарегистрировать существующий экземпляр как общий в контейнере. | |
| void | addContextualBinding(string $concrete, string $abstract, Closure|string $implementation) Добавить привязку с контекстом в контейнер. | |
| ContextualBindingBuilder | when(string|array $concrete) Определить привязку с контекстом. | |
| Closure | factory(string $abstract) Получить замыкание для разрешения данного типа из контейнера. | |
| void | flush() Очистить контейнер от всех привязок и разрешенных экземпляров. | |
| mixed | make(string $abstract, array $parameters = []) Разрешить указанный тип из контейнера. | |
| mixed | call(callable|string $callback, array $parameters = [], string|null $defaultMethod = null) Вызвать указанную функцию/класс@метод и внедрить ее зависимости. | |
| bool | resolved(string $abstract) Определить, был ли разрешен данный абстрактный тип. |
| void | beforeResolving(Closure|string $abstract, Closure $callback = null)
Зарегистрировать новый обратный вызов до разрешения. | |
| void | resolving(Closure|string $abstract, Closure $callback = null)
Зарегистрировать новый обратный вызов при разрешении. | |
| void | afterResolving(Closure|string $abstract, Closure $callback = null)
Зарегистрировать новый обратный вызов после разрешения. |
Подробности
bool bound(string $abstract)
Определить, был ли задан данный абстрактный тип.
void alias(string $abstract, string $alias)
Создать псевдоним типа с другим именем.
void tag(array|string $abstracts, array|mixed $tags)
Назначить набор тегов заданному связыванию.
iterable tagged(string $tag)
Разрешить все привязки для заданного тега.
void bind(string $abstract, Closure|string|null $concrete = null, bool $shared = false)
Зарегистрировать привязку в контейнере.
void bindIf(string $abstract, Closure|string|null $concrete = null, bool $shared = false)
Зарегистрировать привязку, если она еще не зарегистрирована.
void singleton(string $abstract, Closure|string|null $concrete = null)
Зарегистрировать общее связывание в контейнере.
void singletonIf(string $abstract, Closure|string|null $concrete = null)
Зарегистрировать общее связывание, если оно еще не зарегистрировано.
void scoped(string $abstract, Closure|string|null $concrete = null)
Зарегистрировать ограниченное связывание в контейнере.
void scopedIf(string $abstract, Closure|string|null $concrete = null)
Зарегистрировать ограниченное связывание, если оно еще не зарегистрировано.
void extend(string $abstract, Closure $closure)
«Расширить» абстрактный тип в контейнере.
mixed instance(string $abstract, mixed $instance)
Зарегистрировать существующий экземпляр как общий в контейнере.
void addContextualBinding(string $concrete, string $abstract, Closure|string $implementation)
Добавить контекстуальное связывание в контейнер.
ContextualBindingBuilder when(string|array $concrete)
Определить контекстуальную привязку.
Closure factory(string $abstract)
Получить замыкание для разрешения заданного типа из контейнера.
void flush()
Очистить контейнер от всех привязок и разрешенных экземпляров.
mixed make(string $abstract, array $parameters = [])
Разрешить заданный тип из контейнера.
mixed call(callable|string $callback, array $parameters = [], string|null $defaultMethod = null)
Вызвать заданный замыкание/класс@метод и ввести его зависимости.
bool resolved(string $abstract)
Определить, был ли разрешен заданный абстрактный тип.
void beforeResolving(Closure|string $abstract, Closure $callback = null)
Зарегистрировать новый обратный вызов перед разрешением.
void resolving(Closure|string $abstract, Closure $callback = null)
Зарегистрировать новый обратный вызов разрешения.
void afterResolving(Closure|string $abstract, Closure $callback = null)
Зарегистрировать новый обратный вызов после разрешения.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/9.x/Illuminate/Contracts/Container/Container.html