前言
我不知道是不是因为我电脑的问题,xdebug配置一直不成功,也成为了我心里一直过不去的一个小坎,今晚咬咬牙,必须要把xdebug拿下!也是终于自己配好环境了,大部分问题还是出在自己的理解上。下面我详细记录我自己配置vscode xdebug远程调试的配置过程。
1.确认php版本和路径
首先确认我们的php版本
然后找到vscode使用的php对应的路径- [/code][align=center][img]https://img2024.cnblogs.com/blog/3633805/202511/3633805-20251111223407929-35451724.png[/img][/align]
- 路径记好备用,稍后我们要修改这里的php.ini文件
- [size=5]2.xdebug配置[/size]
- [size=4]2.1.xdebug下载[/size]
- [size=3]方法一:手动确认版本[/size]
- 本地运行phpinfo页面,搜索architecture
- [align=center][img]https://img2024.cnblogs.com/blog/3633805/202511/3633805-20251111223416616-398128021.png[/img][/align]
- 然后我们前往xdebug官网下载我们需要的xdebug扩展版本
- https://xdebug.org/download/historical
- [align=center][img]https://img2024.cnblogs.com/blog/3633805/202511/3633805-20251111223425063-779657560.png[/img][/align]
- [code]Architecture x86 对应 32 bit ;x64对应 64 bitZend Extension Build NTS不显示,TS则找TS版本;VC15对应即可。
复制代码 方法二:自动确认版本
https://xdebug.org/wizard
我们可以在终端执行输出phpinfo的全部内容,或者phpstudy搭一个phpinfo的页面,去源代码页面复制全部的html源代码,将他们全部粘贴到这个网站的框中,自动分析,他会告诉你需要安装的xdebug扩展版本。
2.2.放置xdebug扩展
安装扩展版本后,我们将其放在刚才找到的php路径中,我的路径是
D:\SOFTWARE\phpstudy_pro\Extensions\php\php7.3.4nts\php.exe
我们找到D:\SOFTWARE\phpstudy_pro\Extensions\php\php7.3.4nts\ext\
把扩展文件放在这个目录中
2.3.配置php.ini
在php.ini末尾添加以下内容- [Xdebug]zend_extension=php_xdebug-3.1.6-7.3-vc15-nts-x86_64.dllxdebug.remote_enable = 1xdebug.remote_autostart = 1xdebug.remote_handler = "dbgp"xdebug.remote_port = "9003"xdebug.remote_host="localhost"xdebug.mode = debug,develop,tracexdebug.start_with_request = yesxdebug.log="D:\SOFTWARE\phpstudy_pro\Extensions\php\php7.3.4nts\xdebug.log"xdebug.log_level = 7xdebug.idekey = VSCODE
复制代码 这里的xdebug.remote_port端口记得和phpinfo中的xdebug端口保持统一,php.ini配置结束后,在phpinfo页面中搜索xdebug.client_port即可看到端口
xdebug.remote_host="localhost"就是远程调试项目的地址,根据实际情况填写。
xdebug.idekey = VSCODE 这个要搭配浏览器的xdebug helper来使用,后文会提到。
xdebug.log="D:\SOFTWARE\phpstudy_pro\Extensions\php\php7.3.4nts\xdebug.log"是xdebug的日志保存路径,如果xdebug不能正常运行,我们可以查看日志,根据报错来解决问题。
注意:配置php.ini时不要在开头加分号,这是php.ini的注释符。
2.4.检查xdebug配置
我们在phpinfo中搜索xdebug,出现如图所示的页面即表示配置成功。
3.vscode配置
3.1.安装php debug扩展
我们在vscode扩展中搜索php debug扩展,安装并应用
3.2.配置launch.json
我们随便点一个断点,点击f5,出现调试页面

在左上角点击 没有配置 右边向下的箭头,创建对应你的项目目录的配置文件

更改为下面所示launch.json- { // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Listen for Xdebug", "type": "php", "request": "launch", "port": 9003, // 以实际端口为准 "pathMappings":{ "D:\\webroot\\nine\" : "${workspaceFolder}\" // 以实际项目为准 }, "hostname": "localhost" // 以实际主机名为准 }, { "name": "Launch currently open script", "type": "php", "request": "launch", "program": "${file}", "cwd": "${fileDirname}", "port": 9003, // 以实际端口为准 "runtimeArgs": [ "-dxdebug.start_with_request=yes" ], "env": { "XDEBUG_MODE": "debug,develop", "XDEBUG_CONFIG": "client_port=${port}" } }, { "name": "Launch Built-in web server", "type": "php", "request": "launch", "runtimeArgs": [ "-dxdebug.mode=debug", "-dxdebug.start_with_request=yes", "-S", "localhost:0" ], "program": "", "cwd": "${workspaceRoot}", "port": 9003, // 以实际端口为准 "serverReadyAction": { "pattern": "Development Server \\(http://localhost:([0-9]+)\\) started", "uriFormat": "http://localhost:%s", // 以实际主机名为准 "action": "openExternally" } } ]}
复制代码 至此,vscode配置完成。
4.浏览器插件xdebug helper配置
我们在浏览器中搜索插件 xdebug helper
添加到浏览器后,我们在管理扩展中选择这个扩展的选项
修改为如图所示
这里和php.ini中的xdebug.idekey = VSCODE 统一。
5.配置完毕,测试调试功能
至此我们的xdebug配置基本结束,我们来测试xdebug的调试功能
这里以一道反序列化的题目为例,我们在判断传参的位置打上断点
来到phpstudy搭好的网站,我们打开xdebug helper
vscode f5打开调试
出现箭头指的这两个东西即表示调试开始监听。我们随便传一个参数
点击执行,观察vscode调试页面是否变化
我们看到断点位置出现黄条,变量也更新,证明xdebug调试搭建完成。
尾声
做php反序列化再也不用手动echo啦哈哈哈哈哈哈哈哈
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |