mrprompt/silex-di-container-provider

为Silex提供简单的依赖注入构建器

1.0.3 2016-08-04 21:08 UTC

This package is auto-updated.

Last update: 2024-09-21 06:46:23 UTC


README

Build Status Code Climate Test Coverage Issue Count SensioLabsInsight Dependency Status Codacy Badge

基于YAML文件配置的Silex简单依赖注入构建器。

安装

composer require mrprompt/silex-di-builder

使用方法

简单地创建一个di.yml(或其他名称)文件,其结构如下

services:
  alias1:
    - Full\Class\Name
    - dependency1

  alias2:
    - Full\ClassTwo\Name
    - dependency1
    - dependency2

  • alias1 - 是Silex的别名
  • Full\Class\NameFull\ClassTwo\Name - 要初始化的类名
  • dependency1dependecy2 - 类的依赖项,必须是一个之前创建的别名或任何东西

在您的应用程序引导程序中,注册YAML配置服务提供程序,与您的DI文件一起


use DerAlex\Silex\YamlConfigServiceProvider;
use SilexFriends\DI\Container as DiServiceProvider;

....

$app->register(new YamlConfigServiceProvider(__DIR__ . '/../Resources/di.yml'));
$app->register(new DiServiceProvider($app['config']['services']));
 
# $app['config']['services'] is an array with yml content, created by YamlConfigServiceProvider

现在,您的服务在$app容器中可用。

测试

只需运行phpunit不带参数

phpunit

快乐的Silex编码 :)