Container
class Container implements ContainerInterface, ArrayAccess
依赖注入容器
依赖注入容器的目的为了降低代码的耦合度,提高应用的可维护性。 把组件之间的依赖,转换为对容器的依赖,通过容器 进行服务管理(创建、配置和定位)。
Properties
static ContainerInterface | $instance | 存储容器对象实例 | |
array | $aliases | 别名列表 |
Methods
__construct()
初始化容器默认实例
static ContainerInterface
instance()
获取容器对象实例
set(string $id, mixed $definition, bool $shared = true)
注册一个服务到容器
mixed
get(string $id, array $parameters = [])
从容器中获取一个服务
void
alias(string $alias, string $id)
为某个服务定义别名,主要用于类型提示(接口)的自动注入
string
getAliasId(string $alias)
获取某个别名对应的服务标识
bool
has(string $id)
查询容器中是否存在某个服务
void
remove(string $id)
从服务容器中删除一个服务
void
clear()
清空容器
offsetExists($id)
No description
offsetGet($id)
No description
offsetSet($id, $definition)
No description
offsetUnset($id)
No description
mixed
__get(string $id)
允许将服务标识作为属性名访问
Details
at line 47
__construct()
初始化容器默认实例
at line 60
static ContainerInterface
instance()
获取容器对象实例
at line 73
ServiceInterface
set(string $id, mixed $definition, bool $shared = true)
注册一个服务到容器
at line 91
mixed
get(string $id, array $parameters = [])
从容器中获取一个服务
当传入未注册为服务标识的类名时,自动将类名注册为服务,并返回类实例
at line 133
void
alias(string $alias, string $id)
为某个服务定义别名,主要用于类型提示(接口)的自动注入
at line 144
string
getAliasId(string $alias)
获取某个别名对应的服务标识
at line 163
bool
has(string $id)
查询容器中是否存在某个服务
at line 174
void
remove(string $id)
从服务容器中删除一个服务
at line 186
void
clear()
清空容器
at line 195
offsetExists($id)
at line 200
offsetGet($id)
at line 205
offsetSet($id, $definition)
at line 210
offsetUnset($id)
at line 225
mixed
__get(string $id)
允许将服务标识作为属性名访问
$container->someService;