由于在android开发团队,又迷上了android自动化测试,所有一直使用Eclipse做为开发工具。以前使用Zend Studio 9.0.1做为PHP的开发工具,现在放弃使用Zend Studio 9.0.1了,有了Eclipse的PHP开发插件,所以计划以后统一使用Eclipse开发。这样方便。在Eclipse上安装PHP插件非常简单,可以到http://sourceforge.net/project/showfiles.php?group_id=57621 下载插件。把下载到的插件解压。并把解压后的features的文件夹里面的文件放在eclipse的features文件夹里。解压后的plugins里面的文件放在eclipse的plugins文件夹里即可。

配置Eclipse对PHP的调试功能

下面就是详细过程。

下载并安装相应软件

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

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

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

插曲:如何选择PHP 5.2.17.17版本的XDebug

1、打开http://www.xdebug.org/find-binary.php,将你phpinfo时的显示信息的源码COPY到输入框中,然后提交,XDebug将告诉你应该下载哪个版本。

2、进入http://www.xdebug.org/download.php页面,你会看到很多版本以及相同版本的不同版本。这里就有一个疑惑,VC9、VC6、TS这些是什么意思?如果你有疑惑,请访问:PHP中ts和nts版本 - vc6和vc9编译版本的区别
3、得知,PHP 5.2.17.17版本的XDebug应该下载Xdebug 2.1.2版本的PHP 5.2 VC6 TS。至于32位系统或是64位系统,这就取决于你的机器了。

由于

服务器任意,推荐使用Apache+PHP模块安装方式。

安装软件

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

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

Xdebug安装

将文件放到php/ext文件夹下即可

XDebug配置

打开php.ini

在最后一行加入以下配置代码,配置说明已经做好注释
复制代码 代码如下:
;xdebug配置
[Xdebug]

;载入Xdebug
extension=php_xdebug-2.1.2-5.2-vc6.dll
;开启自动跟踪
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

保存后重启服务器即可。

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

【后端开发】Eclipse中php插件安装及Xdebug配置的使用详解_PHP

下面说说Eclipse的配置

1、通过Eclipse启动、停止、重启apache服务失败。

原因:

a、配置不正确,正确配置如下图所示:

【后端开发】Eclipse中php插件安装及Xdebug配置的使用详解_PHP

2、由于我自己根据phpstudy2011B封装的PHP集成环境,apache的服务名称为apache2,但是Eclipse默认启动的是apache2.2,所以我将注册apache服务的名称改为apache2.2后正常。

Eclipse打开CI,出现N多个警告

类似如下信息:

Description Resource Path Location Type The local variable $_ci_path may not have been initialized Loader.php /CI/system/core line 752 PHP Problem

如下图所示:

【后端开发】Eclipse中php插件安装及Xdebug配置的使用详解_PHP

大概意思是局部变量未初始化,就是没有赋初始值。这个在PHP中是很常见的。所以即然给出这么多个warnings,看着有点不舒服。那么就去掉吧

解决办法是:

【后端开发】Eclipse中php插件安装及Xdebug配置的使用详解_PHP

将上面红色选中内容由原来的warning改为Ignore即可。