jomisacu / configloader
简单的配置系统
v1.0.2
2017-04-11 04:08 UTC
This package is auto-updated.
Last update: 2024-09-29 04:31:14 UTC
README
提供处理配置值的简单接口。
概念
配置根目录
这是一个存储所有配置文件的地方,这些文件位于表示环境的子目录下。
环境
一个环境代表目录根下的一个目录。
默认情况下,选择的环境是ConfigLoader::ENV_PRODUCTION ("生产"),要覆盖此设置,可以在配置根目录下放置一个名为ENVIRONMENT.txt的文件,其中包含环境名称,或者通过HTTP服务器配置$_SERVER['ENVIRONMENT']变量。例如,您可以在Apache中设置此变量,添加以下行
# httpd.conf or .htaccess SetEnv ENVIRONMENT 'development'
配置文件
配置文件是一个纯PHP文件,其中包含一个名为$config的数组,包含特定的作用域值。例如
<?php // [config root dir]/[selected environment]/default.php file $config['system_timezone'] = 'Americas/Santo_Domingo';
安装
php composer.phar require "jomisacu/configloader"
用法
使用此包至少需要以下步骤
- 包含
<?php include "vendor/autoload.php";
- 创建实例
<?php // for specific environment values. // represents a sub directory on config files root directory // it's a string and can exists any number of environments $environment = \Jomisacu\ConfigLoader::ENV_DEVELOPMENT; // directory where resides configuration environments dirs // -+ config (config root) // |-- development // |-- production // |-- testing // |-- qa // |-- example // |-- ... $configFilesRootDir = __DIR__ . '/config'; // configuration files to be loaded automatically $autoloadFiles = ['default']; $config = \Jomisacu\ConfigLoaderFactory::create($configFilesRootDir, $environment, $autoloadFiles);
- 访问配置值
<?php // ... // load files $config->load('default'); // via method call echo $config->get('system_timezone') . "<br />"; // via magic method echo $config->system_timezone . "<br />"; // ...