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+ajax实现文章自动保存的方法

本文实例讲述了php+ajax实现文章自动保存的方法。分享给大家供大家参考。具体分析如下: php+ajax文章自动保存的方法主是要方便用户,提高用户体验,我们就是用ajax把数据保存一...

深入研究PHP中的preg_replace和代码执行

深入研究PHP中的preg_replace和代码执行

前言 本文将深入研究 preg_replace /e 模式下的代码执行问题,其中包括 preg_replace 函数的执行过程分析、正则表达式分析、漏洞触发分析,当中的坑非常多,相信看完...

php实现将上传word文件转为html的方法

本文实例讲述了php实现将上传word文件转为html的方法。分享给大家供大家参考。具体实现方法如下: 上传页面: <!DOCTYPE html PUBLIC "-//W3C/...

PHP Class&amp;Object -- 解析PHP实现二叉树

二叉树及其变体是数据结构家族里的重要组成部分。最为链表的一种变体,二叉树最适合处理需要一特定次序快速组织和检索的数据。复制代码 代码如下:<?php// Define a clas...

php正则匹配html中带class的div并选取其中内容的方法

本文实例讲述了php正则匹配html中带class的div并选取其中内容的方法。分享给大家供大家参考。具体分析如下: 先看一段html代码: 复制代码 代码如下:<div clas...