【问题标题】:PSR-12 - method chaining, line breaks, and indentationPSR-12 - 方法链、换行和缩进
【发布时间】:2021-02-25 23:17:14
【问题描述】:

根据 PSR-12,以下代码示例的正确缩进是什么?

$object->method1(function () {
    # do things
})
    ->method2(function () {
        # do things
    });

$object->method1(
    $val1,
    $val2,
    ... (long enough to require multiple lines)
)
    ->method2(
        $val1,
        $val2,
        ... (long enough to require multiple lines)
    );

据我所知,它们是正确的......但看起来很错误,就像method2method1 的孩子。根据我的阅读,method1 的右括号应该与左括号所在的行有相同的缩进(没有缩进),并且method2 应该缩进。

我当然希望我误读了指南,但 IDE 格式化工具似乎也同意这一点。

【问题讨论】:

    标签: php psr-12


    【解决方案1】:

    我认为按照规范,任何一个都是正确的,但是对于它的价值,我总是这样做,而且我认为这也符合规范:

    $object
        ->method1(
            $val1,
            $val2,
        )
        ->method2(
            $val1,
            $val2,
        );
    

    https://phptools.online/php-checker/result/a200cfcd-b7b9-42cf-88fd-2949000feb58

    【讨论】:

      猜你喜欢
      • 2023-03-30
      • 1970-01-01
      • 1970-01-01
      • 2018-05-13
      • 1970-01-01
      • 1970-01-01
      • 2014-12-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多