>  기사  >  백엔드 개발  >  ThinkPHP 디버깅 모드 및 로깅 개요

ThinkPHP 디버깅 모드 및 로깅 개요

不言
不言원래의
2018-06-06 14:31:271581검색

이 글은 주로 ThinkPHP 디버깅 모드와 로깅의 사용법을 소개합니다. 필요한 친구들은 참고하면 됩니다.

이 글은 ThinkPHP 디버깅 모드와 로깅의 사용법을 설명합니다. 이 기능은 ThinkPHP 프로젝트 개발에 있어 매우 중요한 역할을 합니다. 역할을 이해하고 숙달하는 것이 필요합니다. 구체적인 방법은 다음과 같습니다.

1. config.php에서 설정할 수 있으며, 기본값은 닫혀 있습니다.

활성화하는 방법은 다음과 같습니다.

'APP_DEBUG'  => true

ThinkPHPCommondebug.php 파일을 열어 다음과 같이 디버그의 기본 설정을 확인합니다.

return array(
  'LOG_RECORD'=>true, // 进行日志记录
  'LOG_RECORD_LEVEL'    =>  array('EMERG','ALERT','CRIT','ERR','WARN','NOTIC','INFO','DEBUG','SQL'), // 允许记录的日志级别
  'DB_FIELDS_CACHE'=> false, //数据库字段缓存
  'SHOW_RUN_TIME'=>true,     // 运行时间显示
  'SHOW_ADV_TIME'=>true,     // 显示详细的运行时间
  'SHOW_DB_TIMES'=>true,     // 显示数据库查询和写入次数
  'SHOW_CACHE_TIMES'=>true,    // 显示缓存操作次数
  'SHOW_USE_MEM'=>true,      // 显示内存开销
  'SHOW_PAGE_TRACE'=>true,    // 显示页面Trace信息 由Trace文件定义和Action操作赋值
  'APP_FILE_CASE' =>  true, // 是否检查文件的大小写 对Windows平台有效
);

참고: DB_FIELDS_CACHE 데이터베이스 필드 캐시가 꺼져 있습니다. 기본적으로 켜져 있으면 RuntimeData 폴더에 파일 캐시를 생성하고 테이블을 수정한 후 새 필드가 추가되면 이 캐시는 테이블 수정 전에 한 번 수동으로 삭제해야 합니다. 성공할 수 있습니다.

'APP_DEBUG' => true로 설정하면 아래와 같은 DEBUG 프롬프트가 액세스 페이지에 나타납니다.

실행 시간, 메모리 오버헤드 등과 같은 프롬프트 정보 중 일부만 표시하려는 경우 .,

은 config.php에 있을 수 있습니다.

//'APP_DEBUG'  => true, // 调试模式开关
'SHOW_RUN_TIME' => true, //运行时间显示
'SHOW_ADV_TIME' => true, //显示详细的运行时间
'SHOW_DB_TIMES' => true, //显示数据库的操作次数
'SHOW_CACHE_TIMES'=>true, //显示缓存操作次数
'SHOW_USE_MEM' => true, //显示内存开销

프롬프트 정보는 아래와 같습니다.

2. 페이지 추적 정보 사용자 정의: ThinkPHPTplPageTrace .tpl.php

사용자 지정 방법 1: config.php와 동일한 수준 디렉터리에 Trace.php 파일을 추가합니다. 코드는 다음과 같습니다.

<?php
 return array{
  &#39;当前的server信息&#39;=>$_SERVER[&#39;REMOTE_ADDR&#39;],
 };
?>

사용자 지정 방법 2: Action 메서드에 추가합니다.

$this->trace(&#39;调试测试&#39;,&#39;5211314&#39;);

3. 출력 디버깅 방법:

 halt(&#39;aaaaaaa&#39;);//输出aaaaaa并且中断程序执行

4. 모델 디버깅: SQL 문 표시

 $User=new Model(&#39;User&#39;);
 $User->find(1);
 echo $User->getLastSql();//输出最后执行的一条SQL语句

5.

config.php에서 설정 ㅋㅋㅋ


위 내용은 ThinkPHP 디버깅 모드 및 로깅 개요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.