php+vscode+xdebug搭建php调试环境
开发环境
- windows 10
- php 8.0.23
- xdebug 3.1.6
配置xdebug
查看php版本信息
//cmd.exe
php -version
可看到,我的版本信息为8.0.23,先是未开启xdebug的状态,开启后再次查看会显示xdebug。
查看phpinfo信息
打印phpinfo信息,复制phpinfo网页的源代码,在下面的网址粘贴,可以查询适合本版本的xdebug,或者使用php -i
也可以查看php配置信息。
https://xdebug.org/wizard
可以看到,xdebug链接库下载地址,以及安装方法,如果查询的界面不是这样的,那么可能当前php版本不支持xdebug,还是换个合适版本吧~
配置动态链接库
下载php_xdebug-3.1.6-8.0-vs16-nts-x86_64.dll
放在php安装根目录的ext
目录,同时配置php.ini
。zend_extension
表明安装的扩展模块位置,默认在ext
目录寻找,也可以写全物理路径。
zend_extension=php_xdebug-3.1.6-8.0-vs16-nts-x86_64.dll
xdebug.mode = debug
xdebug.start_with_request = yes
再次查看php -version
:
可以看到出现了Xdebug,说明xdebug已经安装成功了。
同时,在phpinfo里面,也可以看到php步骤调试器开启:
配置vscode环境
配置开发环境
vscode安装这两个插件,默认情况下插件会使用cmd的环境变量作为php路径。
首先写个简单php代码测试一下开发环境
<?php
echo 1;
echo 2;
echo 3;
echo 4;
echo 5;
?>
如果运行成功,则不用进行下面的操作,直接配置调试文件即可;如果无法成功运行php代码的话,选择文件-首选项-设置:
找到扩展中的php,设置Executable为php启动文件即可。
配置调试文件
点击vscode运行与调试,直接创建launch.json文件,稍等片刻,会自动生成launch.json文件。
launch.json文件中Listen for Xdebug
是调试网页服务器后端的php代码的,就是说这调选项用于网络请求调试,当浏览器访问php页面时,在vscode上会同步进行调试。而Launch currently open script
是本地调试代码使用的,不经过任何服务器和浏览器,但只是运行php代码;Launch Built-in web server
与Listen for Xdebug
类似,只不过Launch Built-in web server
会自己启动php内置web服务器然后进行调试,而Listen for Xdebug
仅仅是监听调试,不会自己启动php内置web服务器。
vscode调试php网络请求:
可以看到前端等待,后端调试php代码。
vscode调试本地php代码。