PhpStorm配置Xdebug最完整最详解教程,100%成功!

前言

不少人好奇网上关于php配置xdebug的教程那么多,为何我还要写这篇文章?
由于网上的教程配置很乱,不少都是复制粘贴,有些配置项根本不须要,也不解释干吗的,并且不够详细。php

本教程主要应用于Windows,Mac和Linux基本上同理。浏览器

配置xdebug扩展

只配置Debug,不配置profiler和trace,profiler和trace干吗的请百度。
由于大多数状况下是单用户调试,因此不须要配置多用户参数,
如:php.ini 文件 xdebug.idekey 参数和 PhpStorm的Debug -> DBGp Proxy 。cookie

因此php.ini大概配置以下:ide

zend_extension = php_xdebug.dll
xdebug.remote_enable = On
xdebug.remote_host = 127.0.0.1
xdebug.remote_port = 9100

xdebug官网下载地址:https://xdebug.org/download.php
扩展必定要装对,注意区分ts和nts版本,phpinfo()查看扩展是否成功。
推荐 phpEnv集成环境 ,自带xdebug扩展和多版本phpphp-fpm

设置PhpStorm

打开PhpStorm,菜单 File -> Settings ,而后找到 Languages & Frameworks -> PHP -> Debug
设置Debug port9100
为何不是9000?由于会和一些集成环境的php-cgi或者php-fpm端口冲突.url

图片描述

而后配置Languages & Frameworks -> PHP -> Servers
图片描述spa

而后找到PhpStorm右上角电话图标,开始监听php debug的连接插件

图片描述

打开 phpEnv集成环境 的 TCP端口进程列表,有9100端口,说明监听成功debug

图片描述

触发断点调试

在你须要的代码处打断点,这是基础和必须,就很少介绍了。
图片描述3d

重点:触发PhpStorm的debug方式主要有两种

  1. GET、POST存在XDEBUG_SESSION_START 参数或者cookie里存在XDEBUG_SESSION,单用户调试 值随意。GET、POST会生成cookie XDEBUG_SESSION,有效期为1个小时(可修改php.ini配置)。不少教程须要下载Xdebug helper等浏览器插件,原理就是请求里附加cookie。
  2. php.ini 文件 xdebug.remote_autostart 参数设置为 On 或者1,无需设置GET、POST、cookie。

我的推荐第 1 种,教你们用一种更简单的方式,不须要下载浏览器插件。
找到PhpStorm右上角
图片描述
图片描述
而后点小甲虫图标
图片描述
会打开浏览器访问你的url,而且携带GET参数XDEBUG_SESSION_START,同时生成cookie XDEBUG_SESSION,也就是说,下次(cookie有效期1小时)无需点击小甲虫,浏览器直接输入,如 www.a.com 或 www.a.com/chat/1/ 便可触发调试

图片描述

写原创教程不容易,转载请注明来源,有问题请留言,谢谢!

相关文章
相关标签/搜索