Форматирование объявления ассоциативного массива

Программное обеспечение RedGate делает некоторые большие инструменты, которые помогут Вам присвоить версию своей базе данных. Обязательно попытайтесь иметь Ваш devs, создают их собственные изолированные локальные базы данных для работы dev, а не полагаются "dev сервер", который может или не может снизиться в некоторое время.

9
задан 3 revs, 2 users 100% 4 April 2010 в 15:39
поделиться

6 ответов

Лично я всегда говорю:

$array = array(
  '1' => '2',
  3 => 4,
);

Отступ - это один уровень табуляции (обычно 4 пробела, иногда 2). Я ненавижу чрезмерное пустое пространство. Это хорошо работает с вложенными массивами.

10
ответ дан 4 December 2019 в 10:05
поделиться

Мне нравится:

$array = array('Foo' => 'Bar',
               'Baz' => 'Qux');
1
ответ дан 4 December 2019 в 10:05
поделиться

Обычно я буду использовать многострочный формат для ассоциативного массива только в том случае, если он нетривиален в смысле кодирования, т.е. то, на что полезно ссылаться при чтении кода. В противном случае (если это короткий массив) я помещу его в одну строку.

Если он длинный или нетривиальный, моя IDE (на данный момент Eclipse, пока я не выберу подходящую альтернативу) обрабатывает большую часть форматирование для меня. В общем, это похоже на ваш первый пример, с одним уровнем отступа:

$array = array(
    'Foo' => 'Bar',
    'Baz' => 'Qux'
    );

Я предпочел этот способ. Один уровень отступа - это все, что нужно, и он создает больше горизонтального пространства.

2
ответ дан 4 December 2019 в 10:05
поделиться

Я использую метод, похожий на №4:

$array = array('Foo' => 'Bar',
               'Baz' => 'Qux'
               'Moo' => 'Cow');

Я думаю, что этот метод позволяет упростить видимость элементов в массиве, что особенно полезно, когда массив больше 10 элементов .

1
ответ дан 4 December 2019 в 10:05
поделиться

Помимо отступов, существуют также проблемы с выравниванием значений, поскольку ключи, скорее всего, будут иметь разную длину (по крайней мере, некоторые из них). Так, например, как поступить с чем-то вроде этого:

'KeyOne' => 'Value1',
'KeyTwo' => 'Value2',
'KeyTwelve' => 'Value12',

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

'KeyOne'       => 'Value1',
'KeyTwo'       => 'Value2',
'KeyTwelve'    => 'Value12',
1
ответ дан 4 December 2019 в 10:05
поделиться

Обычно я использую такой тип отступа для объявлений массива:

function test()
{
    $my_array = array(
        'a' => 1,
        'bcdef' => 2,
        'gh' => array(
            'glop',
            'test'
        ),
        'ijk' => 20,
    );
}

Очень похоже на №1, но с той разницей:

  • заключительный } без отступа

Я никогда не ставил много пробелов вокруг ' => ', чтобы выровнять значения (например, эннуикиллер предложил ): мне очень трудно читать, и я часто вижу, что неправильное значение ^^

Также обратите внимание, что я всегда помещаю ', ' в конце последнего объявления:

  • это совершенно верно
  • вам не нужно добавлять его когда вы добавляете еще одну строку в массив
  • , когда вы добавляете одну строку в конец массива, вы изменяете только одну строку: ту, которую вы добавляете (и определенно не предыдущую, чтобы добавить ',' как он уже есть); это помогает с различиями и патчами: меньше измененных строк, легче читать

Еще одна вещь: это то, что я делаю, когда работаю над проектом, который не определяет правила форматирования; в противном случае я стараюсь уважать их как можно больше (так, чтобы форматирование было согласованным между членами команды проекта)

6
ответ дан 4 December 2019 в 10:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: