Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

如何在实际开发中开启PHP自带的错误信息

[复制链接]
haigou20 发表于 2013-11-16 16:07:45 | 显示全部楼层 |阅读模式
本帖最后由 haigou20 于 2013-11-16 16:19 编辑

Discuz论坛版本号:X 3

通常情况下,discuz自动将PHP自带的报错功能屏蔽掉,使得在实际开发中,看不到发生在程序上的语法错误。

比如:
  1. <?php
  2. echo 1
  3. ?>
复制代码

以上代码在结尾少了个分号,通常会发出一个语法错误的提示,但是在Discuz系统中默认是屏蔽的,遇到这样的错误是无法判断错误发生在哪里

介个时候就很郁闷了,肿么办,肿么办,肿么办?


经过仔细研究源代码,发现了解决的办法:
1.config/config_global.php文件中添加一行代码:
$_config['debug'] = 1;
//1表示只显示严重错误类型的信息(如上述的每行代码结尾缺少分号)
//2表示显示所有类型错误,包含警告,Notice等


2.source/function目录下添加一个名为function_debug.php的空文件

3.在url后面添加上debug=1
例如:当前url为 http://localpath/forum.php
改为: http://localpath/forum.php?debug=1
注意:如果这一步没有做的话,错误信息同样没有显示,遇到错误页面还是一片空白

系统对于这个问题的处理实现可以查看source/class/discuz/discuz_application.php中的_init_config中的实现
vps-多IP 发表于 2013-12-9 15:27:03 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-12-23 16:25 , Processed in 0.031991 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表