平时调试php程序的时候,可以通过在代码中添加var_dump等函数来实现简单的断点调试。

下面介绍另一种方法,通过Phpstorm和Xdebug来进行调试。

1.下载Xdebug

这个是官网下载地址,下载你需要的版本。

如果不清楚的话可以使用这个工具,只要粘贴提交你phpinfo()信息,就会返回适合你的版本以及简单的安装说明。

2.安装Xdebug

移动下载好的xdebug扩展文件至对应目录并编辑php.ini文件,添加:

zend_extension="你的xdebug扩展文件路径"

具体请参考这里

3.启用客户端调试器

在php.ini中[Xdebug]下添加一行如:

[xdebug]
xdebug.remote_enable = 1

具体请参考这里

4.激活调试器

这里选择安装浏览器插件的方法,适用于通过web方式运行的php脚本。

我的浏览器是chrome,对应的插件是Xdebug Helper。

安装好后在选项里设置IDE key选择PhpStorm。

5.调试

在phpstorm对应的文件中设置好断点。

开启监听,在菜单 -> run -> Start Listening for PHP Debug Connections。

接着在浏览器打开对应的页面,注意右上角Xdebug helper插件小图标的状态是否为开启,如果顺利的话,phpstorm下方就会弹出调试信息的面板了!(如果是第一次配置,会出现一个来自xdebug的连接配置提示,直接点击接受即可)

6.结语

本文介绍的方法主要通过结合浏览器插件来实现,比较方便简单,其他更多相关内容还请参考Xdebug和PHPstorm的官方文档。

Phpstorm Xdebug Web程序调试的更多相关文章

  1. 使用 PHPStorm + Xdebug 实现断点调试(二)

    一.配置 Xdebug 配置 Xdebug 相关参数,在 php.ini 文件中新增如下配置,如果没安装的,请参考<PHP 安装 Xdebug扩展>: [xdebug] xdebug.re ...

  2. PhpStorm+Xdebug配置单步调试PHP

    (一)php安装xdebug扩展,PHPStorm+XDebug单步调试 (二)PHPStorm配置XDebug (三)PHPStorm使用XDebug调试 (四)PhpStorm+Xdebug配置单 ...

  3. phpstorm + x-debug 进行php调试

    参照http://www.cnblogs.com/tippoint/p/3429092.html 进行安装xdebug: 首先自己写一个打印php的页面,将phpinfo 拷贝到下面的框内进行分析. ...

  4. phpstorm xdebug 无法断点调试问题

    最近用phpstorm+xdebug调试一段php代码的时候莫名其妙的无法切入断点调试 本地用的php集成环境是UPUPW ANK V1.1.7 64Bit 选择了集成环境中php版本为7.1.x 搞 ...

  5. XAMPP环境下用phpStorm+XDebug进行断点调试的配置

    具体过程: 服务器端(本地调试的情况下就是在本机)安装好XAMPP,停止apache服务(注意,如果直接退出XAMPP,是不会停止apache的) 在安装目录下找到php.ini,类似于D:\xamp ...

  6. PHPStorm+Xdebug断点远程调试PHP xdebug安装

    一.xdebug安装 wget http://www.xdebug.org/files/xdebug-2.2.3.tgz #下载Xdebug tar xzf xdebug-2.2.3.tgz cd x ...

  7. 极简配置phpstorm+xdebug进行断点调试

    以前调试的时候各种var_dump()就能得到结果,现在入手别人开发的工作,由于不了解业务和代码逻辑,又要去修改bug,就造成了修改bug效率低,所以又拾起来了xdbug,顺便总结了一下phpstor ...

  8. web程序调试方法

    1.火狐浏览器查看链接指向的后台方法(controller方法) f12 进入firebug 点击bug旁边的按钮 即第一排第二个按钮 将鼠标划到想要找的链接 在firebug中显示响应的后台跳转.d ...

  9. 浏览器F12进行Web程序调试

    转自http://www.cnblogs.com/yougewe/p/5152700.html 引语:如今的整个Web开发行业甚至说整个软件开发行业,已经相当成熟,基本上已经很少找不到没有前人做过的东 ...

随机推荐

  1. PHP READ PPT FILE

    function parsePPT($filename) { // This approach uses detection of the string "chr(0f).Hex_value ...

  2. Dungeon Game

    The demons had captured the princess (P) and imprisoned her in the bottom-right corner of a dungeon. ...

  3. poj 1704

    Georgia and Bob Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7233   Accepted: 2173 D ...

  4. swift循环

    ..< {     println(... {     println( ":"lala"] for (key,value)in dic {     println ...

  5. Android的px、dip、sp的区别

    Android的px.dip.sp的区别 我们在页面布局的时候,经常会设置容器的长度,但是到底该使用哪个作为长度的单位而懊恼. 在Android中支持的描述大小区域的类型有以下几种:   px(pix ...

  6. D&F学数据结构系列——B树(B-树和B+树)介绍

    B树 定义:一棵B树T是具有如下性质的有根树: 1)每个节点X有以下域: a)n[x],当前存储在X节点中的关键字数, b)n[x]个关键字本身,以非降序存放,因此key1[x]<=key2[x ...

  7. 传说中的WCF(3):多个协定

    我们知道,WCF服务端是先定义服务协定,其实就是一个接口,然后通过实现接口来定义服务类.那么,有一个问题,如果一个服务类同时实现N个接口(也就是有N个协定)呢?结果会如何? 不必猜,我们还是通过实验来 ...

  8. ring0 与 ring3 层之间的交互

    在进行Windows的ring0层开发时,必不可免的要与 ring3 层进行交互.进行数据间的相互传输.可用的方法有DeviceIoCntrol,ReadFile.我平常都是用的DeviceIoCon ...

  9. 使用RockMongo管理MongoDB

    http://blog.csdn.net/mydeman/article/details/7082730

  10. C#遍历打印机

    #region 获取本机默认打印机名称 ArrayList al1=new ArrayLIst(); private static PrintDocument fPrintDocument = new ...