Code style. Выравнивание массива в PhpStorm
19 сентября 2014 Code Style 26912 просмотров
Важным критерием качества кода является его читаемость, так называемая некомпьютерная красота. Код может быть красивым в плане использования алгоритма, в плане изящного решения вопроса производительности. А может быть красивым просто внешне, и это немаловажно. Сейчас мы рассмотрим массивы, с которыми очень часто сталкиваемся в чужом коде, и тратим драгоценное время для прочтения этого массива.

Для примера возьмем ассоциативный массив, состоящий из пяти элементов:
$badArray = [
    'id' => 1,
    'first_name' => 'Sasha',
    'last_name' => 'Plutov',
    'age' => 24,
    'date_of_birth' => new \DateTime()
];
На самом деле, это массив не так уж и плохо выглядит, хотя бы все новые элементы на отдельных строках, присутствует отступ слева в четыре пробела. Но я ненавижу, когда так пишут массивы, особенно, когда они большие.

Zend Coding Style нам говорит еще о том, что при записи ассоциативных массивов "=>" должен быть выравнен пробелами относительно остальных. Смотрите:
$niceArray = [
    'id'            => 1,
    'first_name'    => 'Sasha',
    'last_name'     => 'Plutov',
    'age'           => 24,
    'date_of_birth' => new \DateTime()
];
По-моему, намного понятней. Но об этом не было бы смысла писать, если бы я не написал, как настроить своё рабочее окружение для такого автоматического выравнивания. Надеюсь, что вы используете PhpStorm, когда разрабатываете приложения на PHP. Нет?

По умолчанию в нем не стоит автоматическое выравнивание. Заходим в File -> Default Settings -> Code Style -> PHP. Переходим на вкладку Other и отмечаем галочкой Align key-value pairs. Всё, теперь выделяйте код и нажимайте Ctrl + Alt + L. Если вы хотите применить это правило только для определенного проекта, то вместе Default Settings заходите в Settings.



Еще стоит отметить, что это еще применимо для выравнивания переменных по знаку "=".