kanellov / config-merge
A simple function that merges config arrays
Installs: 1 589
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- php: >=5.3.0
Requires (Dev)
- funkatron/funit: 0.6.0
This package is not auto-updated.
Last update: 2024-10-26 19:05:13 UTC
README
A simple function that merges configuration files.
Example
In the following example *.local.php files override the *.global.php files.
configuration file /some/path/a.global.php
<?php return array( 'db' => array( 'dsn' => 'mysql:dbname=production_db;host=production_server', 'options' => array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'', ), ), 'dompdf' => array( 'temp_dir' => 'cache', 'default_font' => 'dejavu', 'enable_remote' => true, 'font_height_ratio' => 0.95, 'enable_html5_parser' => true, ), );
configuration file /some/path/b.local.php
<?php return array( 'db' => array( 'dsn' => 'mysql:dbname=dev_db;host=dev_server', 'user' => 'username', 'password' => 'password', ), 'recaptcha' => array( 'public_key' => 'SOMEPUBLICKEY', 'private_key' => 'SOMEPRIVATEKEY', ), );
merge the configuration files using
$config = \Knlv\config_merge('/some/path', array('global', 'local'));
the returned configuration
array( 'db' => array( 'dsn' => 'mysql:dbname=dev_db;host=dev_server', 'user' => 'username', 'password' => 'password', 'options' => array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'', ), ), 'recaptcha' => array( 'public_key' => 'SOMEPUBLICKEY', 'private_key' => 'SOMEPRIVATEKEY', ), 'dompdf' => array( 'temp_dir' => 'cache', 'default_font' => 'dejavu', 'enable_remote' => true, 'font_height_ratio' => 0.95, 'enable_html5_parser' => true, ), );