定制 gorka/pimp 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

gorka/pimp

最新稳定版本:v3.0.2

Composer 安装命令:

composer require gorka/pimp

包简介

Simple Dependency Injection Container

README 文档

README

⚠️ This project is unmaintained and might eventually be removed. Use it at your own risk.

Pimp: Simple Dependency Injection Container

Pimp is a PHP dependency injection container inspired by Pimple, with a Container Interop turn to it.

Backwards compatibility note

Version 3.0.0 has introduced a major backwards compatibility break to comply with container interop specification. On previous version of Pimp config values could be introduced in the container itself; this is no longer possible, please use a config manager instead.

Build Status Code Coverage Scrutinizer Code Quality

Installation

Using composer, inside your project root run:

composer require gorka/pimp

Container

Simple use case:

use Gorka\Pimp\Container;
use Gorka\Pimp\ServiceFactory;

$container = new Container([
    'serviceOne' => function ($c) {
        return new MyService();
    },
    'serviceTwo' => function ($c) {
        return new MyOtherService($c->get('serviceOne'));
    }
]);

$service = $container->get('serviceOne');

You may also add new services or service factories after initialization:

$container->add('ServiceThree', function() { return new MyAwesomeService(); });

By default, Pimp will return same instance each time you call get(). If you want to get a new instance each time you may use a ServiceFactory instead:

$service1 = $container->get('ServiceOne');
$service2 = $container->get('ServiceOne');
var_dump($service1 === $service2); // true

$container->add(
    'ServiceFour', 
    ServiceFactory::create(
        function($c) { 
            return new MyAwesomeService(); 
        }
    )
);

$service1 = $container->get('ServiceFour');
$service2 = $container->get('ServiceFour');
var_dump($service1 === $service2); // false

统计信息

  • 总下载量: 50
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 5
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 5
  • Watchers: 2
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-05-27