caiola / config
Easy PHP config 允许您通过从操作系统读取环境和您定义的公共变量来配置设置
1.0.6
2018-01-15 17:58 UTC
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-29 05:20:59 UTC
README
Config 是一个简单且易于使用的 PHP 类,允许您通过允许从操作系统读取环境和您定义的公共变量来配置设置。
安装
简单安装
composer install caiola/config
如何使用
使用 composer 自动加载并使用它
获取和覆盖环境变量
<?php // Autoload files using Composer autoload $loader = require_once __DIR__ . '/vendor/autoload.php'; use Caiola\Config\Config as Config; Config::getInstance()->setImmutable(false); Config::getInstance()->setUseEnvironment(true); echo "# windir: " . Config::getInstance()->windir . PHP_EOL; Config::getInstance()->windir = 'c:\\win\\'; echo "# windir: " . Config::getInstance()->windir . PHP_EOL;
结果
# windir: C:\WINDOWS
# windir: c:\win\
获取和设置不可变的环境变量
<?php // Autoload files using Composer autoload $loader = require_once __DIR__ . '/vendor/autoload.php'; use Caiola\Config\Config as Config; // Allow to read environment variables Config::getInstance()->setUseEnvironment(true); // Allow to override environment variables Config::getInstance()->setImmutable(true); // Configuration example $databases = array( 'error_log' => '/var/log/error_log', 'master' => array( 'host' => '127.0.0.1', 'port' => '3306', 'user' => 'root', 'pass' => 'pass', 'db' => 'dbapp' ) ); Config::getInstance()->set($databases); // Obtain configuration values through several methods $cfg = new Config(); echo "# db master: " . $cfg->master['db'] . PHP_EOL; echo "# db master: " . Config::getInstance()->master['db'] . PHP_EOL; echo "# db master: " . Config::getByKey("master.db") . PHP_EOL; echo "# error_log: " . $cfg->error_log . PHP_EOL; echo "# error_log: " . Config::getInstance()->error_log . PHP_EOL; echo "# error_log: " . Config::getByKey("error_log") . PHP_EOL; echo "# windir: " . $cfg->windir . PHP_EOL; echo "# windir: " . Config::getInstance()->windir . PHP_EOL; echo "# windir: " . Config::getByKey("windir") . PHP_EOL;
结果
# db master: dbapp
# db master: dbapp
# db master: dbapp
# error_log: /var/log/error_log
# error_log: /var/log/error_log
# error_log: /var/log/error_log
# windir: C:\WINDOWS
# windir: C:\WINDOWS
# windir: C:\WINDOWS