1.先说说 Xdebug 本质:
多种调试配置方式:本质都是在 cookie 中自动添加 XDEBUG_SESSION=PHPSTORM
使用 浏览器Xdebug Helper 插件设置 idekey,用 debug 启动访问时,然后 cookie 会自动添加 XDEBUG_SESSION
使用 请求体 request 中设置 XDEBUG_SESSION_START=PHPSTORM 请求参数,然后 cookie 会自动添加 XDEBUG_SESSION
在请求的 URL 后追加,如 http://localhost:500/api/TestQ/xdebug?XDEBUG_SESSION_START=PHPSTORM
在请求的 body 中追加,如 request.body.XDEBUG_SESSION_START=PHPSTORM
使用 PhpStorm 配置 Debug Configuration 与 Servers ,用 PhpStorm debug 启动访问时,URL会自动追加 XDEBUG_SESSION_START 请求参数,然后 cookie 会自动添加 XDEBUG_SESSION
浏览器 Xdebug Helper 插件方式
优缺介绍
优点:
无需 PhpStorm 配置 Debug Configuration 与 Servers
只要配置一致的 idekey=PHPSTORM 或在 cookie 中添加 XDEBUG_SESSION=PHPSTORM
Xdebug Helper 配置 idekey=PHPSTORM 后,在启用 debug 模式时,会自动在当前访问 url 所在域名(如 localhost:500)下的 cookie 中添加 XDEBUG_SESSION=PHPSTORM
前端 只需要任意页面启用 Xdebug Helper 的 debug 模式即可,原理如上(但要确认你的 client request 携带的 cookie 可以正确到达 server request
Postman 只需要指定域名(如 localhost)的 cookie 中添加一次 XDEBUG_SESSION=PHPSTORM 即可
PhpStorm 中只需开启 Listening Debug Connections(就是顶部路径栏中右边那个小电话图标)
缺点:
需要安装 Xdebug Helper
另外一种 PHPSTORM 中常见的 PHPUnit 单元测试断电调试:
网友评论