VSCODE+PHP8.2配置踩坑记录 – WhiteNight's Site 我配置过的最恶心的环境之一:windows上的PHP。另一个是我Centos服务器上的php。 进不了断点 端口配置和xdebug的安装 这个应该是最
VSCODE+PHP8.2配置踩坑记录 – WhiteNight's Site
我配置过的最恶心的环境之一:windows上的PHP。另一个是我Centos服务器上的php。
进不了断点
端口配置和xdebug的安装
这个应该是最常见的问题了。从网上下载完php并解压到本地,打开vscode,安装php拓展和php server,php debug这两个调试用的拓展,敲下了人生中的第一段php代码
接下来有几种情况:
phpinfo
这是比较好的情况,未来可期。接下来你可以试着打几个断点,先开debug调试,再reload server,看看能不能命中断点,命中的话在vscode的debug界面,左边有“变量”,“监视”啥的,变量那一栏会显示当前变量的值之类的的信息。
写者注
debug需要用vscode打开xxx.php所在的文件夹,再选中你要调试的php文件。
如果这一步也没问题,说明大功告成。能正常访问phpinfo()+能正常debug和命中断点的话,接下来就可以开始php之旅了。
但上面也说过这是最好的情况。实际上你可能会碰到以下几种情况。
总之问题有很多,导致问题的原因也有很多。这里也只是举出我解决该问题的方法。由于php和xdebug的版本不同,该方法可能适用也可能一点用都没有,建议自己摸索。
部分解决方法
php 8.2与xdebug 3.3.0alpha2
上面是我的php和xdebug的版本。毕竟版本不同的话解决方法可能不通用。
除此之外,在vscode中你还应该安装以下三个拓展:
先来说说xdebug,这东西是必须要装的。不装这东西就没法debug调试。安装的话去xdebug官网下,记得下载的xdebug版本要和你用的php版本相匹配。
下载完之后,可以下载的dll重命名为php.xdebug.dll,方便后面的配置。然后扔进php的ext文件夹。接下来开始最重要的第一步:xdebug的配置。
打开php文件夹下的php.ini,在文件末尾输入
[XDebug]zend_extension="F:\php\ext\php_xdebug.dll"xdebug.mode=debugxdebug.start_with_request=yesxdebug.remote_host=localhostxdebug.remote_port=9003xdebug.remote_handler=dbgp
该配置仅能保证你能正常使用debug功能,其他的需要自己配置。
接下来开始第二步,vscode中debug的配置。在debug界面找到launch.JSON,开始配置端口。
配置文件的格式大致如下,其中最重要的是端口的配置。这里的端口需要和你在php.in中为xdebug配置的端口保持一致。
{ // 使用 IntelliSense 了解相关属性。 // 悬停以查看现有属性的描述。 // 欲了解更多信息,请访问: https://Go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Listen for XDebug", "type": "php", "request": "launch", "port": 9003 }, { "name": "Launch currently open script", "type": "php", "request": "launch", "program": "${file}", "cwd": "${fileDirname}", "port": 9003 } ] }
之后再打断点-启动调试-启动php server,应该就不会出现问题了。
来源地址:https://blog.csdn.net/white_night_SZTU/article/details/133781129
--结束END--
本文标题: VSCODE+PHP8.2配置踩坑记录
本文链接: https://www.lsjlt.com/news/433843.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0