为什么Xdebug会为包含的文件抛出错误,而不是必需的

时间:2009-04-28 18:45:17

标签: php ubuntu include xdebug ubuntu-9.04

我在Ubuntu 9.04(桌面版)上运行LAMP服务器。我对Ubuntu很新,所以我通过Synaptic Packet Manager完成了大部分工作。然后我删除了php5-common并通过以下方式安装了php5:apt-get install php5
我的错误报告设置为:error_reporting = E_ALL & ~E_NOTICE

我安装了Xdebug并在php.ini文件中插入了以下内容。

zend_extension=/usr/lib/php5/20060613/xdebug.so

[debug]
; Remote settings
xdebug.remote_autostart=off
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9000

; General
xdebug.auto_trace=off
xdebug.collect_includes=on
xdebug.collect_params=off
xdebug.collect_return=on
xdebug.default_enable=on
xdebug.extended_info=1
xdebug.manual_url=http://www.php.net
xdebug.show_local_vars=0
xdebug.show_mem_delta=0
xdebug.max_nesting_level=100
;xdebug.idekey=

; Trace options
xdebug.trace_format=0
xdebug.trace_output_dir=/tmp
xdebug.trace_options=0
xdebug.trace_output_name=crc32

; Profiling
xdebug.profiler_append=0
xdebug.profiler_enable=0
xdebug.profiler_enable_trigger=0
xdebug.profiler_output_dir=/tmp
xdebug.profiler_output_name=crc32

现在对于某个项目,我的页面中有以下代码行:

include_once(something.php);

现在,something.php不会激动。因为它是包含的而不是必需的,所以我希望看到没有错误,但是XDebug会给我一个错误报告。有人知道如何帮忙吗?

3 个答案:

答案 0 :(得分:1)

呃,这不是Xdebug改变的东西。你也会用普通的PHP发出警告。

德里克

答案 1 :(得分:0)

它应该发出警告,而require_once则会发出致命的信息。

你可以通过以下方式解决这个问题:

@include_once('something.php');

然而,这是一种不好的做法。

另一种方法是明确检查文件是否存在,但除非您提取所有包含路径并检查文件是否存在,否则这将无效。

答案 2 :(得分:-1)

我认为开箱即用xdebug会显示比php更多的错误,但那只是我的魅力。

有时它只会在满月出现时抛出错误。