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一些十分严重的缺陷详解
Jun 03 PHP
基于php使用memcache存储session的详解
Jun 25 PHP
json的键名为数字时的调用方式(示例代码)
Nov 15 PHP
php快速查找数据库中恶意代码的方法
Apr 01 PHP
PHP中的命名空间详细介绍
Jul 02 PHP
变量在 PHP7 内部的实现(二)
Dec 21 PHP
详解WordPress开发中的get_post与get_posts函数使用
Jan 04 PHP
WordPress中重置文章循环的rewind_posts()函数讲解
Jan 11 PHP
PHP中for循环与foreach的区别
Mar 06 PHP
PHP单例模式简单用法示例
Jun 23 PHP
PHP Laravel 上传图片、文件等类封装
Aug 16 PHP
visual studio code 调试php方法(图文详解)
Sep 15 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字符串函数的总结分析
2013/06/05 PHP
php创建sprite
2014/02/11 PHP
php使用Cookie实现和用户会话的方法
2015/01/21 PHP
PHP 构造函数和析构函数原理与用法分析
2020/04/21 PHP
jQuery 开发者应该注意的9个错误
2012/05/03 Javascript
addEventListener和attachEvent二者绑定的执行函数中的this不相同
2012/12/09 Javascript
jQuery性能优化28条建议你值得借鉴
2013/02/16 Javascript
ie与ff下的event事件使用介绍
2013/11/25 Javascript
Javascript实现div的toggle效果实例分析
2015/06/09 Javascript
jquery实现页面虚拟键盘特效
2015/08/08 Javascript
jquery实现平滑的二级下拉菜单效果
2015/08/26 Javascript
常用Javascript函数与原型功能收藏(必看篇)
2016/10/09 Javascript
jQuery zTree树插件简单使用教程
2017/01/10 Javascript
vue多页面开发和打包正确处理方法
2018/04/20 Javascript
vue实现中部导航栏布局功能
2019/07/30 Javascript
node.js爬虫框架node-crawler初体验
2020/10/29 Javascript
微信小程序实现列表左右滑动
2020/11/19 Javascript
python创建临时文件夹的方法
2015/07/06 Python
Python使用cx_Oracle调用Oracle存储过程的方法示例
2017/10/07 Python
Python cookbook(数据结构与算法)字典相关计算问题示例
2018/02/18 Python
解决Django加载静态资源失败的问题
2019/07/28 Python
python爬虫 execjs安装配置及使用
2019/07/30 Python
python破解bilibili滑动验证码登录功能
2019/09/11 Python
python可以用哪些数据库
2020/06/22 Python
传统HTML页面实现模块化加载的方法
2018/10/15 HTML / CSS
Html5内唤醒百度、高德APP的实现示例
2019/05/20 HTML / CSS
阿迪达斯比利时官方商城:adidas比利时
2016/10/10 全球购物
SheIn俄罗斯:时尚女装网上商店
2017/02/28 全球购物
艺术用品:Arteza
2018/11/25 全球购物
美国环保妈妈、儿童和婴儿用品购物网站:The Tot
2019/11/24 全球购物
电气技术员岗位职责
2013/11/19 职场文书
4S店售后客服自我评价
2014/04/09 职场文书
高中诗歌鉴赏教学反思
2016/02/16 职场文书
大学生如何逃脱“毕业季创业队即散伙”魔咒?
2019/08/19 职场文书
Redisson实现Redis分布式锁的几种方式
2021/08/07 Redis
浅谈redis的过期时间设置和过期删除机制
2022/03/18 MySQL