Zend Expressive Config Manager
, (*1)
Library for config PHP application.
With simple caching., (*2)
Designed for zend-expressive, (*3)
Installation
Composer
The preferred way to install this extension is through Composer., (*4)
Either run, (*5)
composer require gummmibear/ze-config-manager dev-master
or add, (*6)
"gummmibear/ze-config-manager": "dev-master"
to the require section of your composer.json, (*7)
Usage
Config providers
File name patterns for php files.
- *.global.php
- *.local.php, (*8)
File name patterns for Yaml files
- *.yml,
- *.global.yml
- *.local.yml, (*9)
To cache config file you can set cache dir otherwise will be used default value for cache file., (*10)
//config/config.php
<?php
require '../../vendor/autoload.php';
use Zend\Expressive\Config\ConfigManager;
use Zend\Expressive\Config\ConfigFileProviderFactory;
use Zend\Expressive\Config\ConfigFileProviderManager;
$configFileProviderFactory = new ConfigFileProviderFactory(__DIR__ . '/autoload/');
$configFileProviderManager = new ConfigFileProviderManager($configFileProviderFactory);
$routingFileProviderFactory = new ConfigFileProviderFactory(__DIR__ . '/routing/');
$routingFileProviderManager = new ConfigFileProviderManager($routingFileProviderFactory);
$configManager = new ConfigManager(__DIR__);
$configManager->setCacheFile('/cache/config_cache.php');
$configManager->registerProviders($configFileProviderManager->createDefaultProviders());
$configManager->registerProviders($routingFileProviderManager->createDefaultProviders());
$config = $configManager->getConfig();
return new ArrayObject($config, ArrayObject::ARRAY_AS_PROPS);
See Example/config.php., (*11)