问题描述
更新1:
我做了以下更改:
/etc/php5/apache2/conf.d/xdebug.ini
看起来像这样:
zend_extension=/usr/lib/php5/20090626+lfs/xdebug.so
xdebug.remote_enable=On
xdebug.remote_enable=1
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
phpinfo看起来像这样:
phpinfo looks like this:
debug
xdebug support enabled
Version 2.0.5
Supported protocols Revision
DBGp - Common DeBuGger Protocol $Revision: 1.125.2.6 $
GDB - GNU Debugger protocol $Revision: 1.87 $
PHP3 - PHP 3 Debugger protocol $Revision: 1.22 $
Directive Local Value Master Value
xdebug.auto_trace Off Off
xdebug.collect_includes On On
xdebug.collect_params 0 0
xdebug.collect_return Off Off
xdebug.collect_vars Off Off
xdebug.default_enable On On
xdebug.dump.COOKIE no value no value
xdebug.dump.ENV no value no value
xdebug.dump.FILES no value no value
xdebug.dump.GET no value no value
xdebug.dump.POST no value no value
xdebug.dump.REQUEST no value no value
xdebug.dump.SERVER no value no value
xdebug.dump.SESSION no value no value
xdebug.dump_globals On On
xdebug.dump_once On On
xdebug.dump_undefined Off Off
xdebug.extended_info On On
xdebug.idekey no value no value
xdebug.manual_url http://www.php.net http://www.php.net
xdebug.max_nesting_level 100 100
xdebug.profiler_aggregate Off Off
xdebug.profiler_append Off Off
xdebug.profiler_enable Off Off
xdebug.profiler_enable_trigger Off Off
xdebug.profiler_output_dir /tmp /tmp
xdebug.profiler_output_name cachegrind.out.%p cachegrind.out.%p
xdebug.remote_autostart Off Off
xdebug.remote_enable On On
xdebug.remote_handler dbgp dbgp
xdebug.remote_host localhost localhost
xdebug.remote_log no value no value
xdebug.remote_mode req req
xdebug.remote_port 9000 9000
xdebug.show_exception_trace Off Off
xdebug.show_local_vars Off Off
xdebug.show_mem_delta Off Off
xdebug.trace_format 0 0
xdebug.trace_options 0 0
xdebug.trace_output_dir /tmp /tmp
xdebug.trace_output_name trace.%c trace.%c
xdebug.var_display_max_children 128 128
xdebug.var_display_max_data 512 512
xdebug.var_display_max_depth 3 3
我检查了netbeans tools > options > php
设置,它们与下面第一个答案中所述的相同.然后,我选择一条if语句,单击ctrl+f8
并添加一个换行符,由于不确定netbeans中的大多数debug
和run
选项,我不确定下一步该怎么做.
I have checked netbeans tools > options > php
settings and they are as they have been described in the first answer below. I then select an if statement, click ctrl+f8
an add a line break, and I am not sure what to do next, as most of the debug
and run
options in netbeans are disabled.
原始问题:
我尝试遵循许多指南,但似乎无法使netbeans中的php调试正常工作
I have tried following many guides, but I can't seem to get php debugging in netbeans to work
我已经安装了灯架,netbeans,xdebug,netbeans php插件,并在/etc/php5/apache2/conf.d/xdebug.ini
中添加了以下内容:
I have installed lamp stack, netbeans, xdebug, netbeans php plugin, and added the following to /etc/php5/apache2/conf.d/xdebug.ini
:
zend_extension=/usr/lib/php5/20090626+lfs/xdebug.so
xdebug.remote_enable=On
xdebug.remote_host="localhost"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
如果我随后重新启动apache2并加载netbeans并打开php页面并添加断点,则netbeans中的所有调试和运行选项都被禁用...
If I then restart apache2 and load netbeans and open a php page and add a breakpoint, all the debug and run options are disabled in netbeans...
我在做什么错了?
我正在使用ubuntu 10.04,并且所有内容都是通过标准ubuntu存储库安装的.
I am using ubuntu 10.04, and everything is installed via the standard ubuntu repositories.
推荐答案
您的xdebug设置看起来不错,尽管您可能需要添加另一行
Your xdebug settings seem fine, although you might need to add another line
xdebug.remote_enable=1
您可能需要检查/更改Netbeans中的一些设置.转到工具-选项-PHP-常规,并验证调试器端口设置为9000(xdebug端口也是如此)并将会话ID设置为netbeans-xdebug
And you probably need to check/change a few settings in Netbeans. Go to Tools - Options - PHP - General and verify that the debugger port is set to 9000 (as is your xdebug port) and the session id is set to netbeans-xdebug
当您转到调用phpinfo()
的页面并检查输出中的xdebug
时,可以验证xdebug是否正在运行.
You can verify that xdebug is running when you go to a page that calls phpinfo()
and check for xdebug
in the output.
这篇关于使用NetBeans调试PHP?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!