On this page
Container
interface Container implements ContainerInterface (View source)
Methods
bool | bound(string $abstract) Determine if the given abstract type has been bound. |
|
void | alias(string $abstract, string $alias) Alias a type to a different name. |
|
void | tag(array|string $abstracts, array|mixed $tags) Assign a set of tags to a given binding. |
|
iterable | tagged(string $tag) Resolve all of the bindings for a given tag. |
|
void | bind(string $abstract, Closure|string|null $concrete = null, bool $shared = false) Register a binding with the container. |
|
void | bindMethod(array|string $method, Closure $callback) Bind a callback to resolve with Container::call. |
|
void | bindIf(string $abstract, Closure|string|null $concrete = null, bool $shared = false) Register a binding if it hasn't already been registered. |
|
void | singleton(string $abstract, Closure|string|null $concrete = null) Register a shared binding in the container. |
|
void | singletonIf(string $abstract, Closure|string|null $concrete = null) Register a shared binding if it hasn't already been registered. |
|
void | scoped(string $abstract, Closure|string|null $concrete = null) Register a scoped binding in the container. |
|
void | scopedIf(string $abstract, Closure|string|null $concrete = null) Register a scoped binding if it hasn't already been registered. |
|
void | extend(string $abstract, Closure $closure) "Extend" an abstract type in the container. |
|
mixed | instance(string $abstract, mixed $instance) Register an existing instance as shared in the container. |
|
void | addContextualBinding(string $concrete, string $abstract, Closure|string $implementation) Add a contextual binding to the container. |
|
ContextualBindingBuilder | when(string|array $concrete) Define a contextual binding. |
|
Closure | factory(string $abstract) Get a closure to resolve the given type from the container. |
|
void | flush() Flush the container of all bindings and resolved instances. |
|
mixed | make(string $abstract, array $parameters = []) Resolve the given type from the container. |
|
mixed | call(callable|string $callback, array $parameters = [], string|null $defaultMethod = null) Call the given Closure / class@method and inject its dependencies. |
|
bool | resolved(string $abstract) Determine if the given abstract type has been resolved. |
|
void | beforeResolving(Closure|string $abstract, Closure $callback = null) Register a new before resolving callback. |
|
void | resolving(Closure|string $abstract, Closure $callback = null) Register a new resolving callback. |
|
void | afterResolving(Closure|string $abstract, Closure $callback = null) Register a new after resolving callback. |
Details
bool bound(string $abstract)
Determine if the given abstract type has been bound.
void alias(string $abstract, string $alias)
Alias a type to a different name.
void tag(array|string $abstracts, array|mixed $tags)
Assign a set of tags to a given binding.
iterable tagged(string $tag)
Resolve all of the bindings for a given tag.
void bind(string $abstract, Closure|string|null $concrete = null, bool $shared = false)
Register a binding with the container.
void bindMethod(array|string $method, Closure $callback)
Bind a callback to resolve with Container::call.
void bindIf(string $abstract, Closure|string|null $concrete = null, bool $shared = false)
Register a binding if it hasn't already been registered.
void singleton(string $abstract, Closure|string|null $concrete = null)
Register a shared binding in the container.
void singletonIf(string $abstract, Closure|string|null $concrete = null)
Register a shared binding if it hasn't already been registered.
void scoped(string $abstract, Closure|string|null $concrete = null)
Register a scoped binding in the container.
void scopedIf(string $abstract, Closure|string|null $concrete = null)
Register a scoped binding if it hasn't already been registered.
void extend(string $abstract, Closure $closure)
"Extend" an abstract type in the container.
mixed instance(string $abstract, mixed $instance)
Register an existing instance as shared in the container.
void addContextualBinding(string $concrete, string $abstract, Closure|string $implementation)
Add a contextual binding to the container.
ContextualBindingBuilder when(string|array $concrete)
Define a contextual binding.
Closure factory(string $abstract)
Get a closure to resolve the given type from the container.
void flush()
Flush the container of all bindings and resolved instances.
mixed make(string $abstract, array $parameters = [])
Resolve the given type from the container.
mixed call(callable|string $callback, array $parameters = [], string|null $defaultMethod = null)
Call the given Closure / class@method and inject its dependencies.
bool resolved(string $abstract)
Determine if the given abstract type has been resolved.
void beforeResolving(Closure|string $abstract, Closure $callback = null)
Register a new before resolving callback.
void resolving(Closure|string $abstract, Closure $callback = null)
Register a new resolving callback.
void afterResolving(Closure|string $abstract, Closure $callback = null)
Register a new after resolving callback.
© Taylor Otwell
Licensed under the MIT License.
Laravel is a trademark of Taylor Otwell.
https://laravel.com/api/10.x/Illuminate/Contracts/Container/Container.html