PHPStorm+XDebug进行调试图文教程

yipeiwu_com6年前PHP代码库

笔者的开发环境如下:Windows8.1+Apache+PhpStorm+XDebug+Firefox(XDebug helper 1.4.3插件)。

一、XDebug安装配置

(1)下载XDebug下载地址:http://www.xdebug.org/必须下载跟机器上安装的php匹配的版本才行。具体下载方法如下:将phpinfo网页的源代码拷贝到http://www.xdebug.org/find-binary.php,然后按照指导安装即可。如下图所示:

(2)安装XDebug按照上图下载“php_xdebug-2.3.2-5.4-vc9.dll”,将其复制到d:\php\ext\目录。

(3)配置XDebug打开d:\php\php.ini,在末尾增加如下代码:

[Xdebug]
zend_extension = d:\php\ext\php_xdebug-2.3.2-5.4-vc9.dll
xdebug.remote_enable =1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = "localhost"
xdebug.remote_mode = "req"
xdebug.remote_port = 9000

重启Apache。

(4)验证安装是否成功检测方法1:在phpinfo网页中,能够检索到XDebug字样,就安装成功了,如下图所示:

检测方法2:

在cmd下输入php -m,能看到XDebug说明配置成功。如下图所示:

二、PHPStorm中XDebug配置在【File】->【Settings】->【Languages & Frameworks】->【PHP】的Setting中:

(1)配置PHP Server找到【Servers】,配置项如下: Name:localhostHost:localhostPort:80Debugger:XDebug如下图所示:

(2)配置PHP Debug找到【Debug】,XDebug中的Debug Port填写9000,其它默认。如下图所示:

三、Fireforx中XDebog helper插件的配置

(1)安装XDebug helper插件如下图所示:

(2)配置XDebug helper插件在上图中,点击【选项】,然后按照如下进行配置:IDE key:PhpStormDomain filter:

localhost如下图所示:

四、使用XDebug调试方法及步骤

(1)在PHPStorm中开启Debug监听点击那个像电话一样的图标即可开启Debug监听,如下图所示:

(2)在Chrome浏览器中开启XDebug helper插件

方法一:在地址栏中,点击那个的虫子,选择Debug,如下图所示:

方法二:使用快捷键:CTRL+SHIFT+X进行配置。

(3)在PHPStorm中设置断点在行号后面空白处单击即可设置断点。

(4)断点调试然后在浏览器中引导到相应的断点处的方法即可自动被断下来,如下图所示:

红色框框中有所有的断点处理方式及快捷键提示。

以上就是本文的全部内容,希望对大家学习PHP调试教程有所帮助。

相关文章

PHP-FPM 设置多pool及配置文件重写操作示例

本文实例讲述了PHP-FPM 设置多pool及配置文件重写操作。分享给大家供大家参考,具体如下: 重写配置文件 1、清空php配置文件 命令:> /usr/local/php/et...

PHP长连接实现与使用方法详解

本文实例讲述了PHP长连接实现与使用方法。分享给大家供大家参考,具体如下: 长连接技术(Long Polling) 在服务器端hold住一个连接, 不立即返回, 直到有数据才返回, 这就...

php 读取shell管道传输过来的内容

暮夏,您好! rainbird给您发了短消息: 已经写了不少后台运行的deamon了.用的挺顺手的,但是我现在想获取管道传过来的内容,不知道咋实现,类似echo "aaaa" |a.ph...

PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例

本文实例讲述了PHP模拟一般面向对象语言中的方法重载(overload)。分享给大家供大家参考,具体如下: 在一般的面向对象设计语言(如C++,Java)中的方法重载就是定义相同的方法名...

php+redis在实际项目中HTTP 500: Internal Server Error故障排除

问题描述 用户量快速增长,访问量在短时间内翻倍,由于前期容量规划做得比较好,硬件资源可以支撑,可是软件系统方面出现了大问题: 40% 的请求都会返回 HTTP 500: Internal...