- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ThinkPHP3.1快速入门(7)调试
2012/09/24 12:44?ThinkPHP?
本篇我们来全面了解下如何在ThinkPHP开发过程中进行调试工作。
调试模式
说到调试,我们可能第一个想到的就是调试模式,没错,ThinkPHP也有专门为开发过程而设置的调试模式,ThinkPHP的调试模式与众不同,会牺牲一定的执行效率,但带来的方便和除错功能非常值得。 我们强烈建议ThinkPHP开发人员在开发阶段始终开启调试模式(直到正式部署后关闭调试模式),方便及时发现隐患问题和分析、解决问题。开启调试模式很简单,只需要在入口文件中增加一行常量定义代码:
<?php
//开启调试模式
define('APP_DEBUG',?true);
//加载框架入口文件
require?'./ThinkPHP/ThinkPHP.php';
在完成开发阶段部署到生产环境后,只需要删除调试模式定义代码即可切换到部署模式。 调试模式的优势在于:
开启日志记录,任何错误信息和调试信息都会详细记录,便于调试;
关闭模板缓存,模板修改可以即时生效;
记录SQL日志,方便分析SQL;
关闭字段缓存,数据表字段修改不受缓存影响;
严格检查文件大小写(即使是Windows平台),帮助你提前发现Linux部署问题;
可以方便用于开发过程的不同阶段,包括开发、测试和演示等任何需要的情况,不同的应用模式可以配置独立的项目配置文件;
在开启调试模式的状态下,我们可以给项目设置不同的应用状态,并加载不同的项目配置文件,但是无论如何,都会首先导入框架默认的调试模式配置文件,该文件位于系统目录的Conf\debug.php。通常情况下,调试配置文件里面可以进行一些开发模式所需要的配置。例如,配置额外的数据库连接用于调试,开启日志写入便于查找错误信息、开启页面Trace输出更多的调试信息等等。如果没有配置应用状态,系统默认则默认为debug状态,也就是说默认的配置参数是:
?'APP_STATUS'?=>?'debug',?//应用调试模式状态
如果检测到项目的配置目录中有存在debug.php文件,则会自动加载该配置文件,并且和系统项目配置文件以及系统调试配置文件合并,也就是说,debug.php配置文件只需要配置和项目配置文件以及系统调试配置文件不同的参数或者新增的参数。 如果想在调试模式下面增加应用状态,例如测试状态,则可以在项目配置文件中改变设置如下:
????'APP_STATUS'?=>?'test',?//应用调试模式状态
这样的话,系统会自动尝试加载项目配置目录下面的test.php 配置文件,可以在test配置文件中改变相关设置,例如改变测试数据库的连接信息等等。由于调试模式没有任何缓存,因此涉及到较多的文件IO操作和模板实时编译,所以在开启调试模式的情况下,性能会有一定的下降,但不会影响部署模式的性能。另外需要注意的是,一旦关闭调试模式,项目的调试配置文件即刻失效。
页面Trace
调试模式并不能完全满足我们调试的需要,有时候我们需要手动的输出一些调试信息。除了本身可以借助一些开发工具进行调试外,ThinkPHP还提供了一些内置的调试工具和函数。例如,页面Trace功能就是ThinkPHP提供给开发人员的一个用于开发调试的辅助工具。可以实时显示当前页面的操作的请求信息、运行情况、SQL执行、错误提示等,并支持自定义显示。 页面Trace功能对调试模式和部署模式都有效,不过只能用于有页面输出的情况(如果你的操作没有任何输出,那么可能页面Trace功能对你帮助不大,你可能需要使用后面的调试方法)。但是在部署模式下面,显示的调试信息没有调试模式完整,通常我们建议页面Trace配合调试模式一起使用。要开启页面Trace功能,需要在项目配置文件中设置:
'SHOW_PAGE_TRACE'?=>true,?//?显示页面Trace信息
该参数默认为关闭,开启后并且你的页面有模板输出的话,页面右下角会显示ThinkPHP的LOGO:
我们看到的LOGO后面的数字就是当前页面的执行时间(单位是秒) 点击该图标后,会展开详细的页面Trace信息,如图:页面Trace框架有6个选项卡,分别是基本、文件、流程、错误、SQL和调试,点击不同的选项卡会切换到不同的Trace信息窗口。基本:当前页面的基本摘要信息,例如执行时间、内存开销、文件加载数、查询次数等等。文件:详细列出当前页面执行过程中加载的文件及其大小。流程:会列出当前页面执行到的行为和相关流程(待完善)。错误:当前页面执行过程中的一些错误信息,包括警告错误。SQL:当前页面执行到的SQL语句信息。调试:开发人员在程序中进行的调试输出。页面Trace的选项卡是可以定制和扩展的,默
您可能关注的文档
- Theologico-Political Treatise P3(神学与政治专题研究3).docx
- Thomas Hart Benton’s Remarks to the Senate(西奥多罗斯福传).docx
- Three Elephant Power and other stories(托马斯哈特本顿政参议院的讲话).docx
- three rhtorical appeals(三种修辞手法).ppt
- ThoreauAdWalden(梭罗和瓦尔登湖)---美国文学PPT解读.ppt
- TIPSINDE贴士指数-香港赛马会.ppt
- TJ 3.4 建物垂直度、标高、全高测量记录填写范例.doc
- TMS320F212完整实验过程快速入门.doc
- TOLD AFTER SUPPER(晚饭后的一席话).docx
- TOD初步方案-村站.ppt
1亿VIP精品文档
相关文档
最近下载
- 《基于2019-2022年财务数据的海天味业企业财务风险管理研究》9000字.docx
- 《孩子你慢慢来》读书报告PPT课件.ppt
- 2023《海天味业企业财务风险的成因及防范措施》8600字.docx
- 2022-2023学年上海市青浦高级中学高一上学期期末英语试题(解析版).pdf VIP
- 年产5000吨豆奶及豆奶饮料工厂设计(第一次修改).doc
- 2023沪科版物理九年级全一册单元测试卷(含答案解析).pdf VIP
- 食堂食材配送服务应急实施方案恶劣天气配送方案.docx
- (完整版)体育培训创业计划书完整.pdf
- 【执行案例手册】活动执行手册(思维篇)_市场营销策划_2021年活动策划全套.pptx
- 2021-2022学年广东省揭阳市揭西县五校九年级(上)第二次联考历史试卷(附答案详解).docx
文档评论(0)