8.2. How PHP-DI works
PHP-DI如何工作
您想帮助改善PHP-DI吗?还是您只是好奇?这是PHP-DI工作原理的简短介绍。
全局架构
主要组件是Container类。它由ContainerBuilder创建,它只是一个辅助类。
从用户的角度来看,它是入口点,也是协调所有其他子组件的组件。
它的主要作用是通过 条目名称返回 条目:
$entry = $container->get('entryName');
容器实例具有以下子组件:
DefinitionSource,它为条目名称返回具体的Definition(通过查找子定义源)DefinitionResolver列表,它将一个Definition解析并返回一个值 (例如,如果Definition是对象,DefinitionResolver将创建它)
Definitions
definition 对条目进行了定义:
- 一个简单的值 (字符, 数字, 对象实例等):
ValueDefinition - 工厂或可调用对象返回的值:
FactoryDefinition - 条目别名的定义:
Reference - 类的定义:
ObjectDefinition - 环境变量的定义:
EnvironmentVariableDefinition
类定义描述了容器应如何创建类实例(构造函数采用的参数等)。
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
PHP-DI 中文文档
关于 LearnKu