Container Interoperability plugin for CakePHP 2.x. This plugin adds the ability to easy configure any service containers compatible with container-interop.
It provides the clean component to access you container or services in container. Also you get container registered in ClassRegistry that allows you to gradually migrate your application.
Installation through composer is HIGHLY RECOMMENDED. Installation can be done manually, but requires a lot more steps and is not supported officially.
composer require eimanavicius/cakephp-container-interop
or add requirement to your composer.json
file manually and don't forget to run composer update
{
"require": {
"eimanavicius/cakephp-container-interop": "^0.0"
}
}
Load the plugin as any other plugin in app/Config/bootstrap.php
:
CakePlugin::load('ContainerInterop', array('bootstrap' => true));
The bootstrap file must be loaded, to set up all configurations needed.
By installing Zend Service Manager plugin.
More pre-configured service containers will be provided as they appear.
By default container is loaded from file app/Config/container.php
(file should return configured service container instance as in sample below). You can change file location by specifying config value before plugin load:
Configure::write('Interop\Container\ContainerInterface', 'app/Config/container.php');
<?php
// Build container
$container = new SomeServiceContainer();
return $container;