PSR-11 Aura.DI container configurator for Laminas and Mezzio applications
Run the following to install this library:
$ composer require laminas/laminas-auradi-config
To get a configured Aura.Di container, do the following:
<?php use Laminas\AuraDi\Config\Config; use Laminas\AuraDi\Config\ContainerFactory; $factory = new ContainerFactory(); $container = $factory( new Config([ 'dependencies' => [ 'services' => , 'invokables' => , 'factories' => , 'aliases' => , 'delegators' => , ], // ... other configuration ]) );
dependencies sub associative array can contain the following keys:
services: an associative array that maps a key to a specific service instance.
invokables: an associative array that map a key to a constructor-less service; i.e., for services that do not require arguments to the constructor. The key and service name usually are the same; if they are not, the key is treated as an alias.
factories: an associative array that maps a service name to a factory class name, or any callable. Factory classes must be instantiable without arguments, and callable once instantiated (i.e., implement the
aliases: an associative array that maps an alias to a service name (or another alias).
delegators: an associative array that maps service names to lists of delegator factory keys, see the Mezzio delegators documentation for more details.
Please note, that the whole configuration is available in the
configkey:$config = $container->get('config');
Replace the contents of
config/container.php with the following:
<?php use Laminas\AuraDi\Config\Config; use Laminas\AuraDi\Config\ContainerFactory; $config = require __DIR__ . '/config.php'; $factory = new ContainerFactory(); return $factory(new Config($config));