概述
di.xml文件配置了对象管理器(object manager)会注入哪些依赖关系(dependencies)。你也可以使用di.xml指定敏感配置信息。

区块和应用访问节点
每个模块都可以有一个全局和局部 di.xml文件。Magento会去读取系统里所有的di.xml文件并且会通过扩展所有节点的方式把他们都合并到一起。
众所周知,局部di.xml会配置展示层的依赖关系,你的模块的全局di.xml文件配置剩下的依赖关系。
Magento会在以下几个时期加载 di.xml文件:
1. 初始化(app/etc/di.xml)
2.全局(<moduleDir>/etc/di.xml)
3.局部(<moduleDir>/etc/<area>/di.xml)
bootstrapping时,每个应用入口节点会加载所请求区域相应的 di.xml文件。
例如:
1.在index.php ,\Magento\Framework\App\Http类根据URL里面提供的front-name来加载该区块
2.在static.php,\Magento\Framework\App\StaticResource类也是根据请求的URL来加载区块
3.在cron.php,\Magento\Framework\App\Cron类总会加载crontab区块。

12-01 04:25