You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用PHP-CS-Fixer为参数和返回类型的|添加空格?

解决方法

你尝试的binary_operator_spaces是ESLint针对JavaScript的规则,对PHP代码不起作用。要给PHP联合类型的|两侧强制加空格,得用PHP代码规范工具PHP-CS-Fixer的对应规则:

可选规则及配置

1. 通用二元运算符规则 binary_operator_spaces

这个规则可以控制所有二元运算符的空格,包括联合类型的|。在PHP-CS-Fixer的配置文件(比如.php-cs-fixer.dist.php)里这么写:

return (new PhpCsFixer\Config())
    ->setRules([
        'binary_operator_spaces' => [
            'default' => 'single_space',
            'operators' => [
                '|' => 'single_space',
            ],
        ],
    ]);

2. 专门针对类型的规则 types_spaces

如果只想精准控制类型声明里的空格(比如联合、交集类型),用这个规则更合适:

return (new PhpCsFixer\Config())
    ->setRules([
        'types_spaces' => [
            'space' => 'single',
        ],
    ]);

修复效果

配置好后运行PHP-CS-Fixer,你的代码:

function test(int|string $value): Model|string

会被自动改成:

function test(int | string $value): Model | string

内容的提问来源于stack exchange,提问作者owenmelbz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 04:54:59