Laravel Pint配置无效:如何调整大括号位置与if语句格式?
解决Laravel Pint配置问题
1. 实现类/函数大括号与定义同行
Laravel Pint基于PHP-CS-Fixer,你之前的配置格式有误——需要将braces规则放在rules节点下,才能覆盖预设的默认值。修改后的pint.json如下:
{ "preset": "laravel", "rules": { "braces": { "position_after_functions_and_oop_constructs": "same", "position_after_anonymous_constructs": "same" } } }
如果使用PSR-12预设仍不生效,同样需要在rules中显式声明该规则,确保覆盖预设的冲突配置。
2. 保留无大括号的单行if格式
要阻止Pint给单行控制语句添加大括号,同时保留原有格式,需配置以下规则:
- 禁用
control_structure_braces规则(该规则强制给单行控制语句添加大括号) - 可选:配置
space_after_not规则,保留!与变量间的空格,匹配你的格式习惯
最终配置示例:
{ "preset": "laravel", "rules": { // 大括号同行配置 "braces": { "position_after_functions_and_oop_constructs": "same", "position_after_anonymous_constructs": "same" }, // 允许单行if不使用大括号 "control_structure_braces": false, // 保留!与变量间的空格(按需选择) "space_after_not": { "space": true } } }
配置完成后,if ( !$num ) return;的格式将不会被修改为带大括号的版本。
内容的提问来源于stack exchange,提问作者SymmetricsWeb
相关产品推荐
相关产品推荐

