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

类定义描述了容器应如何创建类实例(构造函数采用的参数等)。

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/php-di/6.0/how-...

译文地址:https://learnku.com/docs/php-di/6.0/how-...

上一篇 下一篇
贡献者:1
讨论数量: 0
发起讨论 只看当前版本


暂无话题~