akrabat / rka-slim-zfsm-container
Integration of ZF's ServiceManager into Slim 3
Installs: 8 892
Dependents: 1
Suggesters: 0
Security: 0
Stars: 9
Watchers: 6
Forks: 3
Open Issues: 2
Requires
- php: >=5.5
- slim/slim: ^3.0
- zendframework/zend-servicemanager: ^3.0
README
This component enables you to replace the default Pimple container in Slim 3 with Zend\ServiceManager.
Usage
-
composer require akrabat/rka-slim-zfsm-container
-
update
index.php
:$settings = [ 'settings' => [ // user settings go here ], 'factories' => [ // new SM factories go here ], // you can use any other SM key here too. ]; $container = new RKA\ZsmSlimContainer\Container($settings); $app = new \Slim\App($container);
There is also an example application.
Overriding Slim's defaults
To override the default Slim handlers (e.g. errorHandler, notFound, etc), you
can add them to the relevant section of $settings
before instantiating the
container:
$settings = [ 'factories' => [ 'errorHandler' => function ($container) { // do your own thing here }, ], ]; $container = new RKA\ZsmSlimContainer\Container($settings); $app = new \Slim\App($container);
Alternatively you can also override afterwards if you want to:
$container->setAllowOverride(true); $container['errorHandler'] = function($container) { // set-up error handler };