Yii调试SQL的常用方法


Posted in PHP onJuly 09, 2014

Yii调试SQL主要有以下方法:

一、系统自带调试:

首先index.php开启调试模式:

// remove the following lines when in production mode 
defined('YII_DEBUG') or define('YII_DEBUG',true); 
// specify how many levels of call stack should be shown in each log message 
defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3); 
//app use time 
//defined('YII_BEGIN_TIME') or define('YII_BEGIN_TIME',microtime(true));

main.php页面:

'errorHandler'=>array( 
  // use 'site/error' action to display errors 
  'errorAction'=>'site/error', 
), 
'log'=>array( 
  'class'=>'CLogRouter', 
  'routes'=>array( 
    array( 
      'class'=>'CFileLogRoute', 
      'levels'=>'error, warning', 
    ), 
    // 下面显示页面日志 
    array( 
      'class'=>'CWebLogRoute', 
      'levels'=>'trace',   //级别为trace 
      'categories'=>'system.db.*' //只显示关于数据库信息,包括数据库连接,数据库执行语句 
    ),    
  ), 
),

YII_TRACE_LEVEL的数字越大,信息越清楚

二、使用调试工具调试:

yii-debug-toolbar把包解压后 放到extensions里边 然后在配置文件main.php中最后加上

'log'=>array( 
   'class'=>'CLogRouter', 
   'routes'=>array( 
     array( 
       'class'=>'ext.yii-debug-toolbar.YiiDebugToolbarRoute', 
       'ipFilters'=>array('127.0.0.1','192.168.1.215'), 
     ), 
   ), 
 ),

没有出现的话加上在'components'下的db里加上两个属性,

'enableProfiling'=>true, 
'enableParamLogging'=>true,

然后如果有其他调试工具的插件的话,可能会出现冲突导致sql语句不出来,把那段代码注掉即可。

PHP 相关文章推荐
PHP生成静态页
Nov 25 PHP
在php和MySql中计算时间差的方法
Apr 22 PHP
PHP数组排序函数合集 以及它们之间的联系分析
Jun 27 PHP
ThinkPHP调试模式与日志记录概述
Aug 22 PHP
浅谈thinkphp的实例化模型
Jan 04 PHP
PHP中开启gzip压缩的2种方法
Jan 31 PHP
php封装的单文件(图片)上传类完整实例
Oct 18 PHP
THINKPHP在添加数据的时候获取主键id的值方法
Apr 03 PHP
php mysql数据库操作类(实例讲解)
Aug 06 PHP
PHP实现的超长文本分页显示功能示例
Jun 04 PHP
php中html_entity_decode实现HTML实体转义
Jun 13 PHP
TP3.2框架分页相关实现方法分析
Jun 03 PHP
php判断GIF图片是否为动画的方法
Sep 04 #PHP
ThinkPHP3.2.2的插件控制器功能简述
Jul 09 #PHP
PHP 只允许指定IP访问(允许*号通配符过滤IP)
Jul 08 #PHP
php中出现空白页的原因及解决方法汇总
Jul 08 #PHP
php之Smarty模板使用方法示例详解
Jul 08 #PHP
高性能PHP框架Symfony2经典入门教程
Jul 08 #PHP
Thinkphp的volist标签嵌套循环使用教程
Jul 08 #PHP
You might like
PHP中常见的缓存技术实例分析
2015/09/23 PHP
Zend Framework教程之Zend_Db_Table表关联实例详解
2016/03/23 PHP
删除PHP数组中的重复元素的实现代码
2017/04/10 PHP
php获取手机端的号码以及ip地址实例代码
2018/09/12 PHP
javascript getElementsByName()的用法说明
2009/07/31 Javascript
js 替换功能函数,用正则表达式解决,js的全部替换
2010/12/08 Javascript
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
JS基于面向对象实现的放烟花效果
2015/05/07 Javascript
AngularJS控制器controller正确的通信的方法
2016/01/25 Javascript
js H5 canvas投篮小游戏
2016/08/18 Javascript
Vue数据驱动模拟实现5
2017/01/13 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
2017/08/15 jQuery
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
说说node中的可读流和可写流的区别
2018/06/01 Javascript
Vue中div contenteditable 的光标定位方法
2018/08/25 Javascript
vue.js表单验证插件(vee-validate)的使用教程详解
2019/05/23 Javascript
微信小程序用canvas画图并分享
2020/03/09 Javascript
JavaScript隐式类型转换代码实例
2020/05/29 Javascript
详解Django中的ifequal和ifnotequal标签使用
2015/07/16 Python
详解python string类型 bytes类型 bytearray类型
2017/12/16 Python
Python常见MongoDB数据库操作实例总结
2018/07/24 Python
python3.6根据m3u8下载mp4视频
2019/06/17 Python
Python Matplotlib 基于networkx画关系网络图
2019/07/10 Python
利用Python校准本地时间的方法教程
2019/10/31 Python
CSS3 3D制作实战案例分析
2016/09/18 HTML / CSS
h5使用canvas画布实现手势解锁
2019/01/04 HTML / CSS
市场营销专业个人自荐信格式
2013/09/21 职场文书
七年级数学教学反思
2014/01/22 职场文书
先进集体申报材料
2014/12/25 职场文书
经验交流材料格式
2014/12/30 职场文书
项目经理岗位职责
2015/01/31 职场文书
总结Python变量的相关知识
2021/06/28 Python
Java中使用Filter过滤器的方法
2021/06/28 Java/Android
Spring中的使用@Async异步调用方法
2021/11/01 Java/Android