Yii에는 주로 다음과 같은 SQL 디버깅 방법이 있습니다.
1. 시스템에는 디버깅이 포함되어 있습니다.
먼저 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에 더 많은 정보가 있습니다. 2. 디버깅 도구를 사용하세요:
yii-debug-toolbar. 패키지의 압축을 풀고 확장 프로그램에 넣으세요. 그런 다음 main 구성 파일 끝에
'log'=>array( 'class'=>'CLogRouter', 'routes'=>array( array( 'class'=>'ext.yii-debug-toolbar.YiiDebugToolbarRoute', 'ipFilters'=>array('127.0.0.1','192.168.1.215'), ), ), ),
를 추가하세요. .php가 나오지 않으면 'comments' 아래에 추가하세요. db에 두 개의 속성을 추가하세요.
'enableProfiling'=>true, 'enableParamLogging'=>true,
그러면 다른 디버깅 도구에 대한 플러그인이 있으면 충돌이 발생하고 sql 문이 나오지 않을 것입니다. 해당 코드를 주석 처리하세요.
추천 튜토리얼:
yii위 내용은 yii에서 SQL을 디버깅하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!