<?php // /assets/parameters.php return [ 'apiToken' => 'jdf73jdhgj', // 'database' => [ 'connection' => 'mysql:host=localhost;dbname=quickstart', 'user' => 'root', 'password' => 'secret' ] ];
<?php // /assets/config/database.php return [ 'default' => [ 'driver' => 'pdo', 'connection' => '%database.connection%', 'user' => '%database.user%', 'password' => '%database.password%' ] ];
<?php // /assets/config/local/database.php return [ // // 'default' . // array_replace_recursive() 'mongo' => [ 'driver' => 'mongo', 'database' => '%mongo.database%', 'user' => '%mongo.user%', 'password' => '%mongo.password%', ] ];
<?php // /assets/config/local.php return [ 'database' => [ // // , // 'default' 'mongo' => [ 'driver' => 'mongo', 'database' => '%mongo.database%', 'user' => '%mongo.user%', 'password' => '%mongo.password%', ] ] ];
<?php // /assets/parameters.php return [ 'configOverlay' => 'local', // ... ];
print_r($frameworkBuilder->configuration()->config()->get());
$configBuilder = new \PHPixie\Config(); $parameterStorage = $configBuilder->file('parameters.php'); $rootDir = ...; // ( ) $dirName = 'config'; // $configuration = $configBuilder->directory($rootDir, $dirName, 'php', $parameterStorage);
$sliceBuilder = new \PHPixie\Slice(); $configBuilder = new \PHPixie\Config(); $configuration = $configBuilder->file('config.php'); $overlay = $configBuilder->file('overlay.php'); $merged = $sliceBuilder->mergeData($configuration, $overlay);
Source: https://habr.com/ru/post/301152/