Download the PHP package gorka/pimp without Composer
On this page you can find all versions of the php package gorka/pimp. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package pimp
⚠️ 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.
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); // falseAll versions of pimp with dependencies
container-interop/container-interop Version ^1.1
beberlei/assert Version ^2.4

