日期:2014-05-17  浏览次数:20454 次

Eclipse+php插件+Xdebug搭建PHP完美开发/调试环境指南

最近要开始使用Zend框架开发中型应用系统了,由于采用完全面向对象的框架思路开发程序,不光开发思想,先前的Editplus+Dreamweaver编辑器组合显然不能满足我的要求了。我的新环境初步定为Eclipse+PDT插件+Xdebug+apache(Unix平台最流行的WEB服务器平台)。

  先前一直对dotNET、Java的IDE的代码自动嗅探、代码提示、程序断点调试等等自动化功能羡慕不已,而自己写PHP只能靠着echo、var_dump()来调试程序,能不能让PHP也实现断点调试呢?先前在Eclipse的PHP插件中发现了Debug的选项,说明调试功能应该是可行的,但是不知道是怎么个配置法,跑上google查找资料发现没有一个完整的介绍配置文档,我只能将获得的信息拼接起来后来测试。

  结果是:完美实现PHP断点调试!

  =====================================================

  本文系原创文章,转载请注明文章源自思想之地,作者:朦胧中的罪恶

  =====================================================

  下面就是详细过程。

  步骤一:

  1.首先下载并安装相应软件

  Jdk是绝对必要的,它是跑Eclipse的最基本要求,到这里下载。

  Eclipse整合了PHP开发插件版本在这里下载,选择对应自己的操作系统的版本后下载到本地即可。

  XDebug到这里下载,请根据自己PHP的版本选择相应文件下载。

  服务器任意,推荐使用apache(Unix平台最流行的WEB服务器平台)+PHP模块安装方式。

  2.软件安装

  首先安装JDK后,安装好后请按照下面步骤配置系统变量

  其次是安装Eclipse,Eclipse不用怎么设置,只要设置好了JDK,Eclipse放置于任何位置都可以直接运行

  最后Xdebug安装

  我自己使用的是PHP5.2.5,下载的xdebug文件名为:php_xdebug-2.0.3-5.2.5.dll,将文件放到php/ext文件夹下即可

?

xdebug配置

  打开php.ini

  在最后一行加入以下配置代码,配置说明已经做好注释

  ;载入Xdebug

  zend_extension_ts="c:/php/ext/php_xdebug.dll"

  ;xdebug配置

  [Xdebug]

  ;开启自动跟踪

  xdebug.auto_trace = On

  ;开启异常跟踪

  xdebug.show_exception_trace = On

  ;开启远程调试自动启动

  xdebug.remote_autostart = On

  ;开启远程调试

  xdebug.remote_enable = On

  ;收集变量

  xdebug.collect_vars = On

  ;收集返回值

  xdebug.collect_return = On

  ;收集参数

  xdebug.collect_params = On

  注意zend_extension_ts后面的路径要填写绝对路径,保存后重启服务器即可。

  此时用phpinfo()查看php配置,如果安装成功,应该可以看到以下信息:

  下面是eclipse的配置

  详细配置请看下图说明(所有图片均可点击放大查看)

  eclipse全局总体配置:(点击放大查看)

  

  测试服务器配置:在上面窗口中点击 PHP Server....  后(点击放大查看)

  

PHP项目总体配置:打开或新建一个php项目后,在项目上单击右键,选择 Properties(点击放大查看)

     

  按照自己的实际要求配置好之后,整体的调试环境就完全配置好了,开始enjoy吧!

  下面介绍如何开始调试

  1.首先打开你要调试的页面,我这里以emlog首页index.php为例

  在eclipse的菜单中照图中的顺序选择:

  

  这时eclipse就会启动debug界面,效果截图:(点击放大)

  

  如果你的服务器配置正确,那么就会蹦出浏览器并看到程序页面了。

  现在进入重点,很酷的PHP断点调试功能

  在你要设定断点的行上点击右键,选择 Toggle Breakpoints

  

  设定好之后,请再启动debug

  下面是个例子(点击放大)

  

?

  有人肯定会问,这是首页,如果我要调试的页面带有参数或者不能直接访问怎么办?

  答案很简单,你只要在需要的调试的页面上设定断点,debug时启动任何一个可以直接访问的页面,然后从页面上点击到你要访问的页面,或者访问调用你要调试的文件的页面即可,运行到断点的时候eclipse会自动跳出来,这时你就可以开始调试了。

本文来源于 WEB开发网 原文链接:http://www.cncms.com.cn/php/14008_3.htm

?

?