php是解释性语言,大部分调试的时候使用var_dump+exit就可以搞定了,但是在大项目或遇到了负载的问题的时候你就需要断点调试、变量打印、性能分析了,php也有非常程序的解决方案,我们现在就动手安装使用起来。

xdebug安装

windows下的xdebug是根据你所安装的编译版本选择不同的dll文件的,NS为线程安装,VC11是编译器的版本,X86是32位操作系统选择的,X64是64位操作系统选择的,官网下载地址为:

https://xdebug.org/download.php

或者将 php -i 的信息复制到该页面,来帮助你下载哪个版本的dll文件。

https://xdebug.org/wizard.php

这是我的php.ini的配置信息,配置完成后使用php -m查看是否安装成功,如果有错误的话会在最上面显示,没问题后重启web服务器

[XDebug]
;DLL文件目录
zend_extension="c:/xampp/php/ext/php_xdebug-2.5.5-5.6-vc11.dll"
;IDE KEY
xdebug.idekey="PHPSTORM"
;远程调试功能,必须
xdebug.remote_enable=1
xdebug.remote_port="9000"
xdebug.remote_mode="req"
xdebug.remote_handler="dbgp"
;如果是外网ip,且能直接访问端口可实现远程调试功能
xdebug.remote_host="192.168.0.1"
;开启跟踪回溯功能
xdebug.auto_trace=0
xdebug.trace_enable_trigger=1
xdebug.trace_output_dir="C:\php-xdebug-trace"
xdebug.trace_enable_trigger_value="XDEBUG_TRACE"
;记录每个函数的返回值
xdebug.collect_return=1
;记录profile记录功能
xdebug.profiler_enable=1
xdebug.profiler_enable_trigger=1
xdebug.profiler_enable_trigger_value="XDEBUG_PFOFILER"
xdebug.profiler_output_dir="c:\php-xdebug"

chrome xdebug工具安装

下载地址:

https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc

下载后打开xdebug helper页面,设置IDE key为phpStrom,如图:

IDE Key: 编辑器设置

Trace Trigger Value: 通过GET/POST传递XDEBUG_TRACE来启动调试功能

Profile Trigger Value: 每次请求如果GET/POST包含变量名,就会自动生成性能报告,对应的配置为xdebug.profiler_enable_trigger_value,但需要xdebug.profiler_enable_trigger为on

phpstrom配置

  1. 打开File->Setting->Languages & Frameworks > Debug页面,设置xdebug配置

  2. 设置servers域名

    ![](http://images2017.cnblogs.com/blog/204688/201712/204688-20171212161208832-601662386.png)

  3. 打开Run > Edit Configuractions,新增一个php web applcation配置,server选择刚才创建的servers

  4. 好了,现在看看右上角的小电话按钮状态, 打开listen就可以开始调试了,或者点击Run/Debug就可以调试了,在程序的某个点打上断点,调试开始后在下面的操作栏会有运行到某个的变量信息,可以按箭头进行进入、下一步等调试。

配置postman调试post请求

在postman请求中的COOKIE里加入XDEBUG_SESSION=PHPSTORM则可调起phpstrom的调试功能

在Headers中新增key:Cookie,Value:XDEBUG_SESSION=PHPSTORM

XDEBUG_SESSION=PHPSTORM : 打开xdebug功能

XDEBUG_PROFILE=XDEBUG_PFOFILER : 打开profile功能

XDEBUG_TRACE=XDEBUG_TRACE : 打开trace功能

配置远程调试功能

参考:http://blog.csdn.net/qq_31105311/article/details/60322511

phpstrom+xdebug+chrome+postman调试工具搭建的更多相关文章

  1. [PHP] php + phpstudy + phpstrom + xdebug + postman开启调试

    主体 php + phpstudy + phpstrom + xdebug + postman + vue + chrome 使用的是前后端分离的开发方式,vue 在 webpack 通过代理进行请求 ...

  2. 本地环境 XAMPP+phpStorm+XDebug+chrome配置和断点调试 注册方法

    我的安装环境:XAMPP版本号V3.1.0 ;phpStorm版本8.0.3;windowsxp 32bit.您老人家先过目一下,不然怕影响意义. XAMPP.phpStorm 都直接安装在了D盘根目 ...

  3. PhpStorm Xdebug远程调试环境搭建原理分析及问题排查

    2017年05月26日  经验心得 目录   一. 环境介绍 二. 远程环境配置 2.2 Xdebug安装 2.3 配置 三. 本地phpstorm配置 3.1 下载远程代码 3.2 添加php解释器 ...

  4. PHPstudy + phpstrom +xdebug 断点调试(windows) - CSDN博客

    原文:PHPstudy + phpstrom +xdebug 断点调试(windows) - CSDN博客 php.ini 配置 需要添加如下内容 [XDebug]xdebug.profiler_ou ...

  5. Chrome接口调试工具

    网页接口测试工具开发背景 在web开发中,服务器端和客户端的开发和测试必不可少,但是测试的工作往往需要服务器端完成之后,客户端才能进行测试,这无疑延后了测试流程,导致服务器端开发完成后,无法进行充分的 ...

  6. phpstrom+xdebug+Xdebug helper 调试php

    第一步,php.ini打开xdebug扩展 xdebug.remote_enable=on ; 此地址为IDE所在IP xdebug.remote_host=127.0.0.1 xdebug.remo ...

  7. phpStorm+XDebug+chrome 配置

    运行环境: phpStorm 10.0.1 PHP 5.6.24 VC11 x86 Thread Safe Xdebug 2.4.1(PHP 5.6 VC11 TS (32 bit) 1. PHP安装 ...

  8. phpstrom xdebug wamp调试配置文档

    下载并安装phpstorm,下载地址如下 http://download-cf.jetbrains.com/webide/PhpStorm-9.0.2.exe 安装完成后,完成注册,注册方法如下   ...

  9. Chrome Postman及Firefox Poster使用

    Chrome浏览器跟Postman工具共用代理设置及Cookie Firefox浏览器跟Poster工具共用代理设置及Cookie   xdebug调试原理 第一次请求url通过参数XDEBUG_SE ...

随机推荐

  1. preg_replace 以及弃用的e

    preg_replace (PHP 4, PHP 5) preg_replace — 执行一个正则表达式的搜索和替换 说明¶ mixed preg_replace ( mixed $pattern , ...

  2. DoItYourself!

    在杨老师的勉励下,我准备开始“自己”写程序.速度很慢,不过在写的过程中对于用到的几个函数更加熟悉.也尝试多学一点,学透一点.遇到不会的函数,语法不清楚的,还是会百度,不过会自己再敲一遍.重复下去. 下 ...

  3. java 中的 i=i++

    记得大学刚开始学C语言时,老师就说:自增有两种形式,分别是i++和++i,i++表示的是先赋值后加1,++i是先加1后赋值,这样理解了很多年也没出现问题,直到遇到如下代码,我才怀疑我的理解是不是错了: ...

  4. 如何利用Xshell在Linux下安装jdk

    本文会详细介绍如何在Linux下安装JDK1.8 首先要设置虚拟机的IP地址,不知道如何设置的话可以 翻看我的前一篇博客   http://www.cnblogs.com/xiaoxiaoSMILE/ ...

  5. lintocde-247-线段树的查询 II

    247-线段树的查询 II 对于一个数组,我们可以对其建立一棵 线段树, 每个结点存储一个额外的值 count 来代表这个结点所指代的数组区间内的元素个数. (数组中并不一定每个位置上都有元素) 实现 ...

  6. (十三)Jmeter之Bean Shell 的使用(二)

    该文章来自:http://www.cnblogs.com/puresoul/p/5092628.html 上一篇Jmeter之Bean shell使用(一)简单介绍了下Jmeter中的Bean she ...

  7. webgl example1

    <!doctype html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  8. 【前端】JS截取字符串常用方法详细整理

    函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str=”jpg|bmp|gif|ico|png”; arr=theString.split(”|”); //arr ...

  9. Django 2.0 学习(18):Django 缓存、信号和extra

    Django 缓存.信号和extra Django 缓存 由于Django是动态网站,所以每次请求均会去数据库进行相应的操作,当程序访问量大时,耗时必然会显著增加.最简单的解决方法是:使用缓存,缓存将 ...

  10. 实现对一个8bit数据的指定位的置0或者置1操作,并保持其他位不变。

    给定函数原型:void bit_set(unsigned char *p_data,unsigned char positin,int flag) 参数说明:p_data是指定的源数据:positio ...