vscode-PHP调试工具测试,vscode-php调试工具
[VS CODE] PHP调试环境配置步骤
STEP1 安装配置VS-Code-PHP
STEP2 安装配置XDebug
STEP3 配置VSCode调试器
扩展
Wampserver32
整合部署环境,集成Apache服务器 + MySQL + PHP一体的服务器配置环境
Wampserver版本: 3.0.6 32bit
PHP版本: PHP 5.6.25
XDebug
Xdebug is an extension for PHP to assist with debugging and development. It contains a single step debugger to use with IDEs;
XDebug版本: v2.4.1
VSCode
微软提供的一款文本编辑器,使用起来挺带感。界面友好,支持语种非常全面,插件生态链健全。
PS: 注意需要在首页安装php的支持文件
PHPDebug
vs code plugin - VS code ide 插件
用于适配vs code ide的调试器
PHP Debug Adapter for Visual Studio Code
部署调试环境步骤如下:
STEP1 安装配置VS-Code-PHP
安装VS-Code环境
安装PHPDebug - 扩展选项中输入查找安装,重启环境 - 如下图所示:
文件->首选项->设置 ===> 配置PHP执行文件路径,如下图所示:
配置内容如下,因为wamp存在两个php版本,本次测试使用的是5.6版本。
“php.validate.executablePath”: “C:/wamp/bin/php/php5.6.25/php.exe”,
新建需要调试的文件,例如index.php,文件的目录应存在于服务器的目录下,目标文件必须要能够被webserver访问。
STEP2 安装配置XDebug
下载安装XDebug
安装方法可以参考XDebug官方网站
https://xdebug.org/download.php
不需要安装,下载后文件是一个dll插件
由于我们使用Wampserver,查找安装目录下存在如下dll
.\wamp\bin\php\php5.6.25\zend_ext\php_xdebug-2.4.1-5.6-vc11.dll
该dll为Wampserver提前安装好的XDebug,本次测试使用该版本的XDebug进行测试。
配置XDebug
找到php.ini文件,在该文件尾部添加如下设置:
[xdebug]
zend_extension = “c:/wamp/bin/php/php5.6.25/zend_ext/php_xdebug-2.4.1-5.6-vc11.dll”
xdebug.remote_enable = On
xdebug.remote_autostart = On
zend_extension 表示扩展的XDebug插件路径,选择上一步安装的路径
xdebug.remote_enable 使能远程调试
xdebug.remote_enable 使能自动远程调试 - 该选项也必须选中
查看是否安装成功,可以进入浏览器(Wampserver配置成功)localhost,查看phpinfo(),如下图所示:
上述配置两个开关必须为开启状态才能够启用调试,否则会导致无法启动调试器,无法调试。
PS:php.ini 路径如下:
C:\wamp\bin\apache\apache2.4.23\bin\php.ini
重点关注
上面的路径选用apache服务器下的php.ini配置文件,一定不能选择php版本对应目录下的php.ini修改,否则将导致无法触发断点。
C:\wamp\bin\php\php5.6.25\php.ini
STEP3 配置VSCode调试器
启用调试器,按下F5或者debug按钮,会弹出如下图所示下拉框:
选择后,会在工作目录下面出现.vode文件夹,文件夹下会出现一个名为”launch.json“的配置文件。该文件就是该调试器对应的配置文件,勿需修改。缺省内容如下:
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
}
]
}
PS: 此处PHP对应的就是PHP Debug插件,如果项目文件夹中有其他前端代码需要使用Debug for Chrome进行调试,可把.vode文件夹删除后,重启选择调试器进行配置。
选择调试界面
选择”Listen for XDebug“一项
下断点,按下F5界面进入调试状态
进入浏览器中进入该项目下的php文件,触发断点,正常调试完成。
扩展:
其中还有另外一项Launch currently open script,其主要功能是离线调试,依赖于PHP-CLI。
值得一提的是,psysh也是依赖于php-cli。如果问cli到底是什么,目前我能理解的就是本地的脚本解释器,地位等价于web服务器中的脚本解释器。如果使用该方式进行调试,可不需要架设服务器调试代码逻辑。
需要注意的关键点,如果在该调试模式下,php.ini文件不再选择Apache服务器下的php.ini文件,应该选择PHP安装目录下的php.ini文件配置与STEP2相同的配置选项。同理如果修改PHP安装目录下的php.ini文件,在phpinfo中是无法查看到Xdebug进行了修改。
相关文章暂无相关文章