php intelephense 设置 if 空格
在 VS Code 中,如果你使用的是 PHP Intelephense 插件,控制 if 关键字后面是否加空格的设置是由其内置的格式化引擎(基于 PSR-12 标准)决定的。
你可以通过修改 VS Code 的 settings.json 来配置这个行为:
1. 开启 if 后面的空格(默认/推荐,符合 PSR-12)
例如格式化为:if ($condition) { ... }
打开 settings.json 并确保或添加以下配置:
json
"intelephense.format.braces": "psr12",
Use code with caution.
2. 关闭 if 后面的空格(紧凑格式)
如果你希望格式化为:if($condition) { ... }
由于 Intelephense 严格遵循 PSR 标准,它没有单独控制关键字后空格的独立开关。如果你强烈需要这种紧凑风格,通常有以下两种替代方案:
方案 A:改用 php-cs-fixer 插件(推荐用于高度自定义格式)
安装php-cs-fixer插件,并在其规则中配置:json
"control_structure_continuation_position": true, "no_spaces_after_function_name": trueUse code with caution.
方案 B:关闭 Intelephense 的格式化功能
如果你使用其他格式化工具,可以禁用 Intelephense 的格式化:json
"intelephense.format.enable": falseUse code with caution.
如果你想调整的是 花括号 {} 的换行位置(例如 if 同行还是换行),可以调整这个参数:
"intelephense.format.braces": "k&r"(花括号在同行,如if () {)"intelephense.format.braces": "psr12"(标准格式,类和方法换行,控制流同行)
请问你目前格式化出来的具体效果是怎样的?如果你想配合 PHP-CS-Fixer 达到完全自定义的代码风格,我可以为你提供完整的配置文件代码。