VS Code编辑PHP文件时输入闭合大括号丢失缩进求助
PHP文件缩进异常问题排查与定位
环境
- VS Code 1.82.2
- Fedora Linux 38
异常症状
- 编辑PHP文件时,在缩进行输入闭合大括号
},该行及对应闭合代码块的缩进会直接归零。 - PHP文件中的HTML代码,仅在输入闭合标签的
>时,对应行丢失缩进;纯HTML文件无此问题。
排查过程
- 调整VS Code内置的
auto indent设置为keep及其他所有可选值,问题未解决。 - 依次安装/卸载PHP Intelliphense,禁用DEVSENSE All-in-One PHP support、PHP Docblocker、PHP cs fixer、C#等插件,初期未定位到故障点。
- 对比纯HTML与PHP文件中HTML代码的表现,将问题范围缩小至PHP相关插件。
- 最终确认junstyle的PHP cs fixer插件为故障源:禁用该插件需重启编辑器,重启后恢复正常;重新启用插件则立即触发缩进异常。
当前困境
安装该插件是为了获取PSR-12代码格式化支持,目前暂未找到合适替代方案。
可选替代方向
- 使用VS Code官方PHP插件的内置格式化功能,该功能支持PSR-12规范。
- 启用PHP Intelephense的格式化功能,在设置中开启
intelephense.format.enable,并将格式化标准配置为PSR-12。
内容的提问来源于stack exchange,提问作者Neek
相关产品推荐
相关产品推荐

