Стандартный / читаемый декларация массива и использование

StackOverflow https://stackoverflow.com/questions/3700599

  •  02-10-2019
  •  | 
  •  

Вопрос

Как по вашему мнению более стандартный / читаемый / эффективный код массива декларации:

в одну сторону :

$days = array(1=>'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');

Затем используйте: $days[$value]

или второй способ:

$days = array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');

Затем используйте: $days[$value-1]

Обновление: я не могу, чтобы значения были в [0-6], потому что я не предлагаю 3 пути.

Это было полезно?

Решение

Определенно первый (когда ключи правильно определены).

Во втором вам нужно сделать минус (экстракт) это это ненужный цикл ЦП делает ваш код менее читаемым и менее поддерживаемым.

Редактировать: Я надеюсь, что все вы ленивые программисты рады там.

Другие советы

Как насчет 3-го пути:

$days = array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');

и получить доступ к этому как:

$days[$value]

Обеспечивая это $value имеет ценность между [0,6]

забавный:

$days = array('Zer','Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');

(мой друг использовал имя месяца «нулеяться» один раз)
Но серьезно, это зависит от того, откуда приходит этот массив.
Для этого конкретного примера это должно быть просто date("D",$tstamp);

Хотя вся проблема незначительная для меня.
Я часто использую только

$days = explode(" ",'Sun Mon Tue Wed Thu Fri Sat');

и найти это очень удобно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top