2016-12-05 5 views
6

Что позволено между этими двумя:Требует ли PSR-2 вертикального выравнивания?

$value = 'value'; 
$user = 'John'; 
$timestamp = 1480927909; 
$day = date('Y-m-d', $timestamp); 

или

$value  = 'value'; 
$user  = 'John'; 
$timestamp = 1480927909; 
$day  = date('Y-m-d', $timestamp); 
+1

Насколько я знаю, он не требует этого. единственное, что должно быть выровнено по вертикали, это теги phpdoc, но это вне спецификации psr-2 – Federkun

+3

Imo, это значительно улучшает читаемость, поэтому я всегда делаю такое выравнивание. – DanFromGermany

+4

@DanFromGermany - это только улучшает читаемость в тех случаях, когда имена примерно одинаковой длины. Как только вам нужно сделать это с помощью набора данных, где один или два элемента имеют имена, которые намного длиннее других, тогда он может фактически начать уменьшать читаемость. Он также может вкручиваться с вашими различиями, если вам нужно скорректировать смещение знака '=' в какой-то момент в будущем. По этим причинам мне нравится иногда использовать этот тип выравнивания, но, конечно, не всегда. – Simba

ответ

7

PSR-2 не имеет конкретных правил для такого рода выравнивания между линией:

От PSR-2 Conclusion:

Существует много элементов стиля и практики намеренно опущено этим руководством. Они включают, но не ограничиваются ими:

  • декларации глобальных переменных и глобальные константы
  • Декларация функций
  • операторов и назначение
  • выравнивание межстрочный
  • Комментарии и блоки документации
  • Префиксы и суффиксы имени класса
  • Лучшие практики

Рекомендации в будущем МОГУТ пересмотреть и расширить данное руководство, чтобы рассмотреть те или иные элементы стиля и практики.

Для чего это стоит, выравнивание между линия была discussed for PSR-1 по PHP-фигу группы, но был удален из окончательной версии:

Путь возврата оригинала полной формы PSR-1 охватываемого межстрочное выравнивание, глобалы, тройники, назначение и многое другое. В результате они были удалены по различным причинам; их эпитафия находится в конце PSR-2.