Eclipse中php插件安装及Xdebug配置的使用详解

yipeiwu_com5年前PHP代码库

由于在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的配置

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

原因:

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

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

如下图所示:


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

解决办法是:


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

相关文章

Thinkphp框架中D方法与M方法的区别

D()和M()方法的区别: D和M的区别主要在于 M方法不需要创建模型类文件,M方法不会读取模型类,所以默认情况下自动验证是无效的,但是可以通过动态赋值的方式实现 而D方法必须有创建模型...

php获得网站访问统计信息类Compete API用法实例

本文实例讲述了php获得网站访问统计信息类Compete API用法。分享给大家供大家参考。具体如下: 这里使用php获得网站访问统计信息类Compete API,Compete是一个专...

使用PHPWord生成word文档的方法详解

本文实例讲述了使用PHPWord生成word文档的方法。分享给大家供大家参考,具体如下: 有时我们需要把网页内容保存为Word文档格式,以供其他人员查看和编辑。PHPWord是一个用纯P...

按上下级层次关系输出内容的PHP代码

复制代码 代码如下:function getSubComments($parent = 0, $level = 0) { $db = &JFactory::getDBO(); $sql...

PHP session有效期问题

一个已知管用的方法是,使用session_set_save_handler,接管所有的session管理工作,一般是把session信息存储到数据库,这样可以通过SQL语句来删除所有过期...