php - 使用 NetBeans 调试 PHP?

标签 php linux netbeans ubuntu xdebug

更新 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 看起来像这样:

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 并添加一个换行符,我不确定接下来要做什么,因为大多数 debug netbeans 中的运行 选项被禁用。


原始问题:

我已经尝试遵循许多指南,但我似乎无法在 netbeans 中进行 php 调试

我已经安装了 lamp stack、netbeans、xdebug、netbeans php 插件,并将以下内容添加到 /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 中的所有调试和运行选项都被禁用...

我做错了什么?

我使用的是 ubuntu 10.04,一切都是通过标准 ubuntu 存储库安装的。

最佳答案

您的 xdebug 设置看起来不错,尽管您可能需要添加另一行

xdebug.remote_enable=1

您可能需要检查/更改 Netbeans 中的一些设置。转到 Tools - Options - PHP - General 并验证调试器端口设置为 9000(您的 xdebug 端口也是如此)并且 session ID 设置为 netbeans-xdebug

当您转到调用 phpinfo() 的页面并在输出中检查 xdebug 时,您可以验证 xdebug 是否正在运行。

关于php - 使用 NetBeans 调试 PHP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6835454/

相关文章:

java - 如何从Netbeans项目中的jar中排除源包

java - 没有maven的netbeans上的dl4j

php - 在 PHP 中将数组元素移动到顶部

php - 如何获取 Instagram 评论父 ID 并确定它是顶级还是回复

tee 可以在 c 编程中将 fifo 重定向到 stdout 吗?

linux - Kali Linux Metasploit 框架奇怪的行为

eclipse - 使用 netbeans 和 eclipse 编辑 netbeans 项目

PHP - MySQL 语句在 UPDATE SET 时始终将值设置为 1

php - 通过 PHP 比较数据库中的列

php - tools/android 返回找不到 sdkmanager.jar