Yaconf配置管理扩展使用示例
本篇文章是对Yaconf配置管理扩展使用示例进行讲述的,具有一定的学习价值,感兴趣的朋友可以看看,希望对你有所帮助。
一、单独使用
在目录 D:\phpStudy\Yaconf 下新增配置文件 redis.ini,内容如下
- [base]
- parent="yaconf"
- children="NULL"
- [children:base]
- children="set"
重启服务器,新建 index.php 文件测试
- <?php
- $redis = \Yaconf::get('redis');
- print_r($redis);
打印内容
- $ php index.php
- Hello WorldArray
- (
- [base] => Array
- (
- [parent] => yaconf
- [children] => NULL
- )
- [children] => Array
- (
- [parent] => yaconf
- [children] => set
- )
- )
二、框架集成使用(ThinkPHP5.1)
php.ini
- [yaconf]
- yaconf.directory="/home/www/web/cl_new_pay_dev"
- yaconf.check_delay=60
5.1 版本默认支付yaconf
在项目更目录新建 thinkphp.ini 添加以下内容( cl_new_pay_dev 目录下)
- name="yaconf"
- year=2015
- features[]="fast"
- features.1="light"
- features.plus="zero-copy"
- features.constant=PHP_VERSION
- features.env=${HOME}
由于默认Yaconf使用多个配置文件,建议在项目中使用setYaconf方法指定Yaconf使用的独立配置文件,例如
建议在应用的公共函数文件中进行设置 common.php
think\facade\Config::setYaconf('thinkphp');
(1)使用助手函数
- var_dump(Config::yaconf('name'));
- var_dump(Config::yaconf('year'));
- var_dump(Config::yaconf('features')['plus']);
- var_dump(Config::yaconf('features.plus'));
- var_dump(Config::yaconf('features.constant'));
- var_dump(Config::yaconf('features.env'));
打印结果
- string(6) "yaconf"
- string(4) "2015"
- string(9) "zero-copy"
- string(9) "zero-copy"
- string(6) "7.2.12"
- string(0) ""
(2)不适用助手函数,直接访问
- print_r("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
- print_r(\Yaconf::get("cpay"));
- print_r(\Yaconf::get("cpay.common"));
- print_r(\Yaconf::get("cpay.database"));
- print_r(\Yaconf::get("cpay.redis"));
- print_r(\Yaconf::get("cpay.redis.host"));
打印结果
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Array
- (
- [common] => Array
- (
- [app_name] => 二万OCR
- [app_host] => www.cnblogs.com
- [app_debug] => 1
- )
- [database] => Array
- (
- [app_name] => 二万OCR
- [app_host] => www.cnblogs.com
- [app_debug] => 1
- [hostname] => 127.0.0.1
- [database] => cl_cpay
- [username] => root
- [password] => wang123456,
- )
- [redis] => Array
- (
- [app_name] => 点点支付
- [app_host] => www.cnblogs.com
- [app_debug] => 1
- [host] => 192.168.1.1
- [port] => 6379
- [auth] => 123456
- [prefix] => TII
- )
- )
- Array
- (
- [app_name] => 二万OCR
- [app_host] => www.cnblogs.com
- [app_debug] => 1
- )
- Array
- (
- [app_name] => 二万OCR
- [app_host] => www.cnblogs.com
- [app_debug] => 1
- [hostname] => 127.0.0.1
- [database] => cl_cpay
- [username] => root
- [password] => wang123456,
- )
- Array
- (
- [app_name] => 二万OCR
- [app_host] => www.cnblogs.com
- [app_debug] => 1
- [host] => 192.168.1.1
- [port] => 6379
- [auth] => 123456
- [prefix] => TII
- )
- 192.168.1.1
capy.ini 配置文件
- [common]
- app_name = "二万OCR"
- app_host = "www.cnblogs.com"
- app_debug= true
- [database:common]
- hostname = "127.0.0.1"
- database = "cl_cpay"
- username = "root"
- password = "wang123456",
- [redis:common]
- host = "192.168.1.1"
- port = 6379
- auth = 123456
- prefix = "TII"