Thinkphp中如何实现关闭调试模式,调试模式好在哪
Admin 2022-07-25 群英技术资讯 603 次浏览
在thinkphp3.2中,可以利用define关闭调试模式,该标签用于变量和常量的定义,将入口文件中定义调试模式设为FALSE即可,语法为“define('APP_DEBUG', false);”;开启调试模式将参数值设置为true即可。
本文操作环境:Windows10系统、ThinkPHP3.2版、Dell G3电脑。
ThinkPHP有专门为开发过程而设置的调试模式,开启调试模式后,会牺牲一定的执行效率,但带来的方便和除错功能非常值得。
开启调试模式很简单,只需要在入口文件中增加一行常量定义代码:
<?php // 开启调试模式 define('APP_DEBUG', true); // 定义应用目录 define('APP_PATH', './Application/'); // 加载框架入口文件 require './ThinkPHP/ThinkPHP.php';
在完成开发阶段部署到生产环境后,只需要关闭调试模式或者删除调试模式定义代码即可切换到部署模式。
<?php // 关闭调试模式 define('APP_DEBUG', false); // 定义应用目录 define('APP_PATH', './Application/'); // 加载框架入口文件 require './ThinkPHP/ThinkPHP.php';
调试模式的优势在于:
开启日志记录,任何错误信息和调试信息都会详细记录,便于调试;
关闭模板缓存,模板修改可以即时生效;
记录SQL日志,方便分析SQL;
关闭字段缓存,数据表字段修改不受缓存影响;
严格检查文件大小写(即使是Windows平台),帮助你提前发现Linux部署可能导致的隐患问题;
通过页面Trace功能更好的调试和发现错误;
在开启调试模式的状态下,系统会首先导入框架默认的调试模式配置文件,该文件位于系统目录的Conf\debug.php。
通常情况下,调试配置文件里面可以进行一些开发模式所需要的配置。例如,配置额外的数据库连接用于调试,开启日志写入便于查找错误信息、开启页面Trace输出更多的调试信息等等。
如果检测到应用的配置目录中有存在debug.php文件,则会自动加载该配置文件,并且和系统项目配置文件以及系统调试配置文件合并,也就是说,debug.php配置文件只需要配置和项目配置文件以及系统调试配置文件不同的参数或者新增的参数。
由于调试模式没有任何缓存,因此涉及到较多的文件IO操作和模板实时编译,所以在开启调试模式的情况下,性能会有一定的下降,但不会影响部署模式的性能。另外需要注意的是,一旦关闭调试模式,项目的调试配置文件即刻失效。
一旦关闭调试模式,发生错误后不会提示具体的错误信息,如果你仍然希望看到具体的错误信息,那么可以如下设置:
'SHOW_ERROR_MSG' => true, // 显示错误信息
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
PDO如何实现mysql防注入?很多新手可能对于mysql注入攻击是什么?如何防注入不是很清楚,因此这篇文章就给大家介绍一下什么是注入攻击和PHP使用PDO实现mysql防注入的方法。
laravel支持四种数据库:1、MySQL,一个关系型数据库管理系统;2、PostgreSQL,一款“对象-关系”型数据库管理系统;3、SQLite,一款轻型的关系型数据库管理系统;4、SQL Server,一款关系型数据库管理系统。
sort()定义和用法 sort()函数按升序对给定数组的值排序。 注释:本函数为数组中的单元赋予新的键名。原有的键名将被删除。 如果成功则返回TRUE...
php传值和引用的区别是什么?一些朋友对于这个问题不是很了解,下面小编就给大家简单的介绍一下关于php传值和传引用的区别,感兴趣的朋友就继续往下看吧。
PHP论坛实现积分系统的思路代码详解,首先在用户表定义一个积分字段;然后创建一个等级表,主要字段有等级名,上限积分和下限积分;再根据用户的行为进行积分累加;最后根据判断用户积分在哪个等级
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008