yaf mysql_Yaf框架的配置
http://www.laruence.com/manual/yaf.ini.html //先看一下惠新宸鸟哥yaf官网的配置说明
我们可以在php.ini中定义开发环节配置项,把本地开发设置成develop、测试环境配置成test、生产环境配置成product。代码如下,默认的是product
[yaf]yaf.environ=develop
通过设置运行环境,在项目中可以通过ini_get(‘yaf.environ’)获取环境参数。
yaf配置文件一般都放在项目的conf文件夹下,yaf application实例化的时候需要传递一个配置文件路径,配置文件叫application.ini,先看下application.ini的结构:
[common]
; 通用配置
[product : common]
; 生产环境配置
[test : common]
; 测试环境配置
[develop : common]
; 开发环境配置
配置例子如下代码
application.debug =TRUE
;当意外的错误发生的时候,开启/关闭异常抛出。 当开启的时候,Yaf将会抛出异常而不是触发可捕捉的错误。
;1抛出异常. 0获取可以调试的错误
application.dispatcher.throwException= 0;开启/关闭自动异常捕获功能
;1Yaf会将所有未捕获的异常交给Error Controller的Error Action来处理. 0直接打印
application.dispatcher.catchException= 0;如果 throwException= 0,那么 catchException是什么都无所谓了. 因为catchException是捕获异常的.
;如果 throwException= 1, catchException的值决定异常处理方式.但catchException为1,必须定义Error Controller,否则还会报这个错误.
;
;redis.namespace = "TEST_";redis.servers.host= '127.0.0.1';redis.servers.port= '6379';redis.servers.password= '';redis.servers.weight= 1Redis.namespace = "TEST_"Redis.servers.host= '127.0.0.1'Redis.servers.port= '6379'Redis.servers.password= ''Redis.servers.weight= 1sessRedis.host= '127.0.0.1'sessRedis.port= '6379'sessRedis.timeout= 0.5sessRedis.db= 9sessRedis.auth= ''DB_TYPE="mysql"DB_HOST="127.0.0.1"DB_PORT="3306"DB_CHARSET="utf8"DB_NAME="kmjd"DB_USER="root"DB_PWD="root"
配置除了节之外,节和节之间还有继承关系。
例如[product : common]就表示product的配置会继承common的配置。
yaf在实例化应用传递配置文件路径和运行环境:
define("APPLICATION_PATH", realpath(dirname(__FILE__) . '/../'));
$app= new \Yaf\Application(APPLICATION_PATH . "/conf/application.ini", ini_get('yaf.environ'));
这样当项目运行环境在develop下的时候,会优先读取[develop : common]内的配置,如果没有则会从[common]中获取。
\Yaf\Application::app()->getConfig(); //在项目中任何地方都可以通过次代码获取application.ini中的配置。
事实上该例中可以不用传递ini_get(‘yaf.environ’)参数,在实例化的时候yaf会自行读取php.ini中的yaf.environ参数。但如果是其它的配置文件,则需要传递该参数。代码如下
$app = new Yaf_Application(APP_PATH . "/conf/application.ini");
代码中获取配置项的方法如下
$this->_config = Yaf_Application::app()->getConfig()->get("Redis");
$this->_host = $this->_config['servers']['host'];
$this->_port = $this->_config['servers']['port'];
$this->_db = $this->_config['servers']['db'];
当然,除了用yaf指定的application.ini配置之外,把所有的配置都归结到一个文件中,也可以分开配置,yaf中提供了\Yaf\Config\Ini类来处理这些额外的配置文件。
$config = new \Yaf\Config\Ini(APPLICATION_PATH . '/conf/url.ini', ini_get('yaf.environ'));
在实际读取的时候,最好能设置一个静态变量保存读取到的配置,避免重复申请系统open函数调用。如下:
static $config = null;if ($config === null) {
$config= new \Yaf\Config\Ini(APPLICATION_PATH . '/conf/url.ini', ini_get('yaf.environ'));
}
详细可以参考yaf扩展示例Bootstrap中的getUrlIniConfig方法。
yaf mysql_Yaf框架的配置相关推荐
- yaf mysql_Yaf框架封装的MySQL数据库操作示例
本文实例讲述了Yaf框架封装的MySQL数据库操作.分享给大家供大家参考,具体如下: Yaf封装DB简单操作 介绍 因为Yaf是一个纯天然的MVC阔架,本人还在贝锐的时候就和主管一起用Yaf框架去重构 ...
- 如果要用thinkphp框架_php需要改哪些配置,thinkPHP框架动态配置用法实例分析
本文实例讲述了thinkPHP框架动态配置用法.分享给大家供大家参考,具体如下: 最近在用@ThinkPHP 做系统的时候,要用到一个功能,就要动态的将系统的配置参数保存到Config文件中.以往,我 ...
- pycharm python部署_使用PyCharm配合部署Python的Django框架的配置纪实
安装软件安装 Python 2.7.PyCharm.pip(Python包管理工具).Django ( pip install Django) 部署PyCharm 新建Django工程 完成后,其目录 ...
- shiro框架---shiro配置介绍(一)
接上一篇文章shiro框架-通过系统介绍shiro框架中的实现逻辑 项目已分享到GitHub上,如果需要的可以看下,springboot+shiro项目Git下载地址. shiro在springb ...
- 基于antd pro框架,配置接口apiUrl前缀
基于antd-pro框架,配置package.json中的打包命令,实现不同环境使用不同的接口apiUrl前缀,避免人肉修改,保证各环境对应各自的api地址. 背景 这阵子,在玩antd-pro,感觉 ...
- yaf创建项目及配置
安装yaf 安装yaf扩展参考:https://blog.csdn.net/qq_18361349/article/details/112688449?spm=1001.2014.3001.5501 ...
- laravel框架的配置
开发环境的配置与要求 laravel框架对服务器的有少量要求,推荐Homestead作为laravel的本地开发环境,若不使用Homestead,那么开发环境需要满足以下要求(现使用的是phpstud ...
- 一个简单的游戏框架:配置表方案
一个简单的游戏框架:配置表方案 代码:https://github.com/HushengStudent/myGameFramework 1.配置表格式 csv,逗号分隔,可以使用wps和Excel打 ...
- SpringSecurity权限管理框架系列(六)-Spring Security框架自定义配置类详解(二)之authorizeRequests配置详解
1.预置演示环境 这个演示环境继续沿用 SpringSecurit权限管理框架系列(五)-Spring Security框架自定义配置类详解(一)之formLogin配置详解的环境. 2.自定义配置类 ...
最新文章
- Pinging ? with 32 bytes of data 故障解决
- android movie studio 下载,Movie Studio+ Video Editor
- Dart 异步编程之 Isolate 和事件循环
- Nodejs扩展,实现消息弹窗
- 三种常见嵌入式设备通信协议
- cf1526 C Potions
- 【算法分析与设计】浅谈递归与非递归
- Java历程-初学篇 Day02变量,数据类型和运算符
- vsftp.conf 配置文件详解
- 【转】Linux下发生段错误时如何生成core文件
- Java解析函数_Java Predicate及Consumer接口函数代码实现解析
- 解决IIS进程回收后第一次访问慢的问题
- SSM框架原理,作用及使用方法,详细解释
- 小程序——scroll-view 页面不滚动与隐藏导航条
- DNX 版本升级命令
- 微信公众号开发教程(六)获取微信用户信息-网页授权
- STM32SD卡实现USB虚拟U盘
- 数据库如何备份与恢复
- 统计学基础知识梳理(三)
- python 输入一个数,判断是不是水仙花数
热门文章
- maven创建的工程eclipse 项目--属性--为什么没有deployment assembly 按钮呢
- 漫谈 Windows Server 管理工具
- (C#)Windows Shell 外壳编程系列4 - 上下文菜单(iContextMenu)(二)嵌入菜单和执行命令...
- Android中文API (39) —— AbsSpinner
- 大数据将如何重构汽车产业的商业模式?
- 【POI xls Java map】使用POI处理xls 抽取出异常信息 --java1.8Group by ---map迭代 -- 设置单元格高度...
- awk用法:取列表最后一列
- linux中ssh连接慢的一种解决方法
- Mysql命令行修改字段类型
- php 23种设计模型 - 组合模式(合成模式)