marm / yamm
2.0.2
2018-11-07 10:52 UTC
Requires
- pimple/pimple: @stable
Requires (Dev)
- pdepend/pdepend: @stable
- phpmd/phpmd: @stable
- phpunit/phpunit: ^4.0
- squizlabs/php_codesniffer: @stable
This package is not auto-updated.
Last update: 2024-09-23 06:26:49 UTC
README
英文
此元模块提供了一般所需的功能,例如
-
可重用的依赖注入容器
-
合理的日志功能
DIC 使用
DIC 是 Pimple 的扩展,允许服务标记,并与 Oxid eSales 集成。
要使用 DIC,只需在项目的根目录中放置一个 dic.php
文件,并将所有服务注册在那里。在这个文件中,将有一个可操作的变量 $dic
。
/** @var \Marm\Yamm\DIC $dic */
$dic['acme_module_service'] = function (\Marm\Yamm\DIC $dic) {
return new Acme\Module\Service(/* ... */);
};
此外,我们允许对服务进行标记,并在构造服务时接收带有定义标记的所有服务。
/** @var \Marm\Yamm\DIC $dic */
$dic->tag('acme_module_service', 'acme:tag');
$dic['acme_module_service'] = function (\Marm\Yamm\DIC $dic) {
return new Acme\Module\Service(/* ... */);
};
// Somewhere else or later
$dic['acme_module_aggregator'] = function (\Marm\Yamm\DIC $dic) {
return new Acme\Module\Aggregator(
// Array of all services tagged with "acme:tag"
$dic->getTagged('acme:tag')
);
};
要获取项目中其他位置的 DIC,只需从 oxRegistry
获取。
/** @var \Marm\Yamm\DIC $dic */
$dic = oxRegistry::get('yamm_dic');
许可条款
YAMM 根据 MIT 许可证发布。
在项目中使用此模块时,请保留作者声明。谢谢!