热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ThinkPHP调试模式与日志记录

1、可以在config.php中进行设置,默认为关闭状态,'APP_DEBUG'>true,打开\ThinkPHP\Common\debug.php文件可以查看debug的默认...

1、可以在config.php中进行设置,默认为关闭状态,'APP_DEBUG'   =>  true,打开\ThinkPHP\Common\debug.php文件可以查看debug的默认设置如下:

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

注意事项:DB_FIELDS_CACHE数据库字段缓存默认关闭状态,如果开启的话,会在Runtime\Data文件夹下生成文件缓存,并且修改表之后,如新加了字段,这个缓存无法记录你的操作,需要我们手动删除一次,对表的修改才会成功.

将'APP_DEBUG'   =>  true后,访问页面会出现如下图的DEBUG提示:

\

如果只想显示一部分提示信息,如运行时间,内存开销等,可以在config.php中进行相应的设置即可,如:

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

提示信息如下图:

\

2、页面Trace信息的自定义:\ThinkPHP\Tpl\PageTrace.tpl.php

自定义的方法一:在config.php的同级目录加上一个trace.php文件

  1.   return array
  2.     '当前的server信息'=>$_SERVER['REMOTE_ADDR'], 
  3.   }; 
  4. ?> 

自定义的方法二:在Action方法中添加

$this->trace('我很丑,但是我很温柔','5211314');

3、输出调试法:

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

4、模型调试:显示SQL语句

  1. $User=new Model('User'); 
  2. $User->find(1); 
  3. echo $User->getLastSql();//输出最后执行的一条SQL语句 

5、日志记录\ThinkPHP\Lib\Think\Core\Log.class.php,config.php中设置:

  1. 'LOG_RECORD'=>true,//开启了日志记录 
  2. 'LOG_RECORD_LEVEL'=>array('EMERG','ALERT','ERROR'), 

推荐阅读
  • 本文介绍了解决在Windows操作系统或SQL Server Management Studio (SSMS) 中遇到的“microsoft.ACE.oledb.12.0”提供程序未注册问题的方法,特别针对Access Database Engine组件的安装。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 本文详细探讨了JavaScript中的作用域链和闭包机制,解释了它们的工作原理及其在实际编程中的应用。通过具体的代码示例,帮助读者更好地理解和掌握这些概念。 ... [详细]
  • Windows 7 64位系统下Redis的安装与PHP Redis扩展配置
    本文详细介绍了在Windows 7 64位操作系统中安装Redis以及配置PHP Redis扩展的方法,包括下载、安装和基本使用步骤。适合对Redis和PHP集成感兴趣的开发人员参考。 ... [详细]
  • 本文介绍了数据库体系的基础知识,涵盖关系型数据库(如MySQL)和非关系型数据库(如MongoDB)的基本操作及高级功能。通过三个阶段的学习路径——基础、优化和部署,帮助读者全面掌握数据库的使用和管理。 ... [详细]
  • C#设计模式学习笔记:观察者模式解析
    本文将探讨观察者模式的基本概念、应用场景及其在C#中的实现方法。通过借鉴《Head First Design Patterns》和维基百科等资源,详细介绍该模式的工作原理,并提供具体代码示例。 ... [详细]
  • 本文详细介绍了如何在不同操作系统和设备上设置和配置网络连接的IP地址,涵盖静态和动态IP地址的设置方法。同时,提供了关于路由器和机顶盒等设备的IP配置指南。 ... [详细]
  • Appium + Java 自动化测试中处理页面空白区域点击问题
    在进行移动应用自动化测试时,有时会遇到某些页面没有返回按钮,只能通过点击空白区域返回的情况。本文将探讨如何在Appium + Java环境中有效解决此类问题,并提供详细的解决方案。 ... [详细]
  • 如何清除Chrome浏览器地址栏的特定历史记录
    在使用Chrome浏览器时,你可能会发现地址栏保存了大量浏览记录。有时你可能希望删除某些特定的历史记录而不影响其他数据。本文将详细介绍如何单独删除地址栏中的特定记录以及批量清除所有历史记录的方法。 ... [详细]
  • JavaScript 中创建对象的多种方法
    本文详细介绍了 JavaScript 中创建对象的几种常见方式,包括对象字面量、构造函数和 Object.create 方法,并提供了示例代码和属性描述符的解释。 ... [详细]
  • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
  • 利用Selenium与ChromeDriver实现豆瓣网页全屏截图
    本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ... [详细]
  • 探索新一代API文档工具,告别Swagger的繁琐
    对于后端开发者而言,编写和维护API文档既繁琐又不可或缺。本文将介绍一款全新的API文档工具,帮助团队更高效地协作,简化API文档生成流程。 ... [详细]
  • 本章详细介绍SP框架中的数据操作方法,包括数据查找、记录查询、新增、删除、更新、计数及字段增减等核心功能。通过具体示例和详细解析,帮助开发者更好地理解和使用这些方法。 ... [详细]
  • 在安装 SQL Server 时,选择混合验证模式可以提供更高的灵活性和管理便利性。如果您已经安装了 SQL Server 并使用单一的 Windows 身份验证模式,可以通过以下步骤将其更改为混合验证模式。 ... [详细]
author-avatar
牧高风_457
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有