本文主要介绍在NETBEAN6.9.1中使用 XDEBUG调试PHP5.3.x的配置。
上文,我已经介绍过了
NETBEAN这款开发工具。
这里,讲一下在NETBEAN6.9.1中使用 XDEBUG调试PHP5.3.x的配置.我的PHP版本为5.3.3,WIN环境。全部使用最新版开发环境。
第一步:安装PHP5.3,使用phpinfo输出信息,确认安装成功。
注意版本的区别,建议
下载VC6版本,并且线程安全的那一个。至于什么是线程安全,可以百度。
第二步,我们要将xdebug配置起来.
1.进行xdebug的官方
http://www.xdebug.org/.
2 进入下载页面选择适合你的版本下载.
http://www.xdebug.org/download.php
3.XDEBUG官方默认会把你带入自动配置页面
http://www.xdebug.org/find-binary.php,把本机中输出的phpinfo的页面内容复制出来,粘贴到底部的文本区域里。注意是直接在网页中全选复制,而不是复制网页的源代码。
Do not paste the raw HTML (from view-source) into the form.
4.粘贴后,点击 analyse my phpinfo() output提交,Xdebug会根据你的phpinfo的信息,给你如下建议。
如我的:
Summary
* Xdebug installed: 2.1.0
* Server API: Apache 2.0 Handler
* Windows: yes - Compiler: MS VC6 - Architecture: x86
* Zend Server: no
* PHP Version: 5.3.3
* Zend API nr: 220090626
* PHP API nr: 20090626
* Debug Build: no
* Thread Safe Build: yes
* Configuration File Path: C:\WINDOWS
* Configuration File: E:\td\php533\php.ini
* Extensions directory: E:\td\php533\ext
here are the instructions anyway:
1. Download php_xdebug-2.1.0-5.3-vc6.dll
2. Move the downloaded file to E:\td\php533\ext
3. Update E:\td\php533\php.ini and change the line
zend_extension = E:\td\php533\ext\php_xdebug-2.1.0-5.3-vc6.dll
4. Restart the webserver 【注意要重启服务器后PHP.INI的变动才会生效】
|
5.成功下载到适合自己PHP版本的php_xdebug.dll(我下载的为
php_xdebug-2.1.0-5.3-vc6.dll)后,我们将它复制到自己的PHP的ext目录中。具体你的PHP的ext目录在哪里,我们可以从phpinfo中获取得到.
6.配置PHP.INI文件。下面是我的配置:
[xdebug]
;用中括号表示出来的是模块名称,它会在你的phpinfo信息中作为大的分隔的标题显示出来.
zend_extension=E:\td\php533\ext\php_xdebug-2.1.0-5.3-vc6.dll
;设置php_xdebug的dll文件路径和名称.
有些老的教程使用zend_extension_ts. 这个在新的XDEBUG中已经改了。千万注意了。
xdebug.auto_trace=On
;Xdebug会将php的对函数调用的监测的信息用文件格式输出来
xdebug.collect_params=On
;Xdebug会将php的对函数调用的参数加入到函数过程调用的监测中
xdebug.collect_return=On
;将函数调用的返回值加入到函数过程调用的监测中
xdebug.trace_output_dir="E:/td/debug"
;设置的函数调用监测信息的输出路径
xdebug.profiler_enable=On
;这是效能监测的设置开关
xdebug.profiler_output_dir="E:/td/debug"
;这是效能监测信息设置为on的情况下,写入到profiler_output_dir设置的路径中,会生成一个相应的文件.
以上就是基本配置了,更详细的,比如更改XDEBUG输出的颜色啊,样式啊,都可以在phpinfo中查看输出,然后自己添加,覆盖默认值。配置完成后,重启apache,在phpinfo中,你应该能够正常看到xdebug这样的大标题项,以及下面星罗棋布的小项。
第三步:让netbean和xdebug结合起来.
在php.ini文件中加入
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9000
以上信息可以在进行netbean调试时,弹出的警告对话框中获取,用来设置xdebug对netbean的支持.
重启apache,此时你的netbean的调试器已经和xdebug关联起来了,可以对php程序进行调试.
第四步:xdebug的其他使用。
生成的效率调试文件,我们可以使用wincachegrind来进行详细读取和分析。不过这个软件很老了。在变量分析阶段,我们也可以使用xdebug
自带的函数来帮助分析。
我们可以在netbean中调试文件,F7逐行的来跟踪文件运行的每一步,看到系统的每一步时候的输出. F7(步入),ctrl+F7 (步出),F8(步过) 常用的这几个键. 在想中断调试的地方我们可以下断点进行调试。
下面是我的一个截图。
netbean官方xdebug使用指南地址:
http://wiki.netbeans.org/HowToConfigureXDebug