Yii中的公共方函数封装与db读写分离,为测试方便,缓存暂时配置为file
来源:互联网 发布:淘宝店铺利益点案例 编辑:程序博客网 时间:2024/06/11 20:46
1. 在protected/config目录中新建文件 globals.php
2. 在index.php中增加
$globals=dirname(__FILE__).'/protected/config/globals.php';require_once($globals);
3. globals.php中的内容如下:
<?phpfunction user(){return Yii::app()->getUser();}function app(){return Yii::app();}function param($name){return app()->params[$name];}function dump($target){return CVarDumper::dump($target, 10, true) ;}function debug(){$args = func_get_args();call_user_func_array(array('Debug','thin'),$args);}function cache(){return app()->cache;}# db function beginfunction db($dbname=''){if ($dbname){return Yii::app()->$dbname;}else{return Yii::app()->db;}}function execute($sql='',$dbname='write'){$db=db($dbname);return $db->createCommand($sql)->execute();}function fetch($sql='',$dbname='read'){$db=db($dbname);return $db->createCommand($sql)->queryRow();}function fetchAll($sql='',$dbname='read'){$db=db($dbname);return $db->createCommand($sql)->queryAll();}function fetchCol($sql='',$dbname='read'){$db=db($dbname);return $db->createCommand($sql)->queryScalar();}# db function end function h($text){return htmlspecialchars($text,ENT_QUOTES,Yii::app()->charset);}function l($text, $url = '#', $htmlOptions = array()){return CHtml::link($text, $url, $htmlOptions);}function url($route,$params=array(),$ampersand='&'){return Yii::app()->createUrl($route,$params,$ampersand);}
4. 数据库与缓存
array('components'=>array('fixture'=>array('class'=>'system.test.CDbFixtureManager',),'db'=>array('connectionString' => 'mysql:host=127.0.0.1;port=3306;dbname=dbname','emulatePrepare' => true,'username' => 'root','password' => '','charset' => 'utf8','tablePrefix'=>'t_','enableProfiling'=>true,'schemaCachingDuration'=>0,'enableParamLogging'=>true,),'read'=>array('class'=>'CDbConnection','connectionString' => 'mysql:host=127.0.0.1;port=3306;dbname=dbname','emulatePrepare' => true,'username' => 'root','password' => '','charset' => 'utf8','tablePrefix'=>'t_','enableProfiling'=>true,'schemaCachingDuration'=>0,'enableParamLogging'=>true,),'write'=>array('class'=>'CDbConnection','connectionString' => 'mysql:host=127.0.0.1;port=3306;dbname=dbname','emulatePrepare' => true,'username' => 'root','password' => '','charset' => 'utf8','tablePrefix'=>'t_','enableProfiling'=>true,'schemaCachingDuration'=>0,'enableParamLogging'=>true,),'cache'=>array('class'=>'system.caching.CFileCache',//'directoryLevel'=>'2',),
- Yii中的公共方函数封装与db读写分离,为测试方便,缓存暂时配置为file
- Yii配置主从同步,读写分离
- Yii(2)读写分离配置
- YII支持读写分离
- 为ibatis配置缓存
- yii框架实现读写分离
- 为Ubuntu配置ssh服务,方便远程登陆
- 为Ubuntu配置ssh服务 方便远程登陆
- go 为方便单元测试的函数
- 为Yii增加一个自定义全局函数
- Yii使用公共函数
- PostgreSQL 安装与读写分离配置
- 图片的三级缓存封装为library
- OScache为web配置缓存
- 为方便管理Maven中的模块,Maven提供了聚合与继承来管理
- 通过公共函数为私有成员赋值
- sqlalchemy 读写分离简单封装
- Android Robotium黑盒测试封装为Apk
- ios开发笔记之常用库的一些整理
- JVM内存管理
- 《嫁给程序员 幸福到永远》
- 如何验证订阅服务器中的数据(复制 Transact-SQL 编程)
- 智能指针
- Yii中的公共方函数封装与db读写分离,为测试方便,缓存暂时配置为file
- oracle 密码 重置,
- HTML5 IndexedDB
- oracle数据库 唯一约束的创建与删除
- 如何利用iOS技术特性打造最佳用户体验
- 第27章、流动视图ScrollView(从零开始学Android)
- BSTR、LPSTR、LPWSTR、CString、VARIANT、COleVariant 、_variant_t、CComBSTR、_bstr_t
- 黑马程序员_异常
- Linux下基于C/C++的Socket编程实例