PSR-12 - цепочка методов, разрывы строк и отступы

Каков правильный отступ для следующих примеров кода в соответствии с 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)
    );

Насколько я могу судить, они правы ... но это выглядит так неправильно, как будто это ребенок. Из того, что я прочитал, закрывающая скобка для method1 должен иметь тот же отступ, что и строка, на которой стоит открывающая скобка (без отступа), и что method2 должен быть с отступом.

Я очень надеюсь, что неправильно читаю рекомендации, но инструменты форматирования IDE, похоже, тоже согласны с этим.

1 ответ

Я думаю, что по спецификации любой из них является правильным, но чего бы это ни стоило, я всегда делаю так, и я думаю, что это также соответствует спецификации:

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

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

Другие вопросы по тегам