Мы можем определить константу типа
define("aconstant','avalue'); 
Не можем ли мы определить массив таким образом, как показано ниже?
 define("months",array("January", "February", ---); 
UPDATE: это возможно в PHP 7 ( ссылка )
 // Works as of PHP 7 define('ANIMALS', array( 'dog', 'cat', 'bird' )); echo ANIMALS[1]; // outputs "cat" 
ОРИГИНАЛЬНЫЙ ОТВЕТ
От php.net …
Значение константы; допускаются только скалярные и нулевые значения . Скалярными значениями являются значения integer, float, string или boolean. Можно определить константы ресурсов, однако это не рекомендуется и может привести к непредсказуемому поведению.
  $months = array("January,"February",...) будет в порядке. 
вы можете использовать const для этой цели с PHP 5.6 (через nikic ).
 const months = ["January", "February"]; var_dump("January" === months[0]); 
Вы можете помещать массивы внутри констант с помощью взлома:
 define('MONTHS', serialize(array('January', 'February' ...))); 
  Но тогда вы должны unserialize() что постоянное значение, когда это необходимо, и я думаю, это не так полезно. 
В качестве альтернативы определите несколько констант:
 define('MONTH_1', 'January'); define('MONTH_2', 'February'); ... 
  И используйте функцию constant() для поиска значения: 
 echo constant('MONTH_'.$month); 
Нет, ты не можешь. См. PHP: Синтаксис – Руководство
В константах могут содержаться только скалярные данные ( логические, целочисленные, плавающие и строковые ). В качестве ресурса можно определить константы, но его следует избегать, так как это может вызвать неожиданные результаты.
Вы можете использовать формат JSON для хранения массива в строке и затем привязать эту строку к константе.
 $months = array("January","February","March"); define('MONTHS', json_encode($months)); 
Когда вы хотите использовать его:
 $months = json_decode(MONTHS); 
Если вы должны иметь константу, как насчет использования строки с разделителями aa и взрыва в массив?
 define("MONTHS", "January;February;March"); $months = explode(";",MONTHS); 
  Начиная с PHP 5.6, можно объявлять постоянные массивы .  Связанная документация использует пример const ARR = ['a', 'b'];  ,  Вы также можете выполнить const ARR = array('a', 'b');  ,  Однако в 5.6 существует нечетная причуда: вы можете объявлять постоянные массивы, используя const , но не define() .  Это было исправлено в PHP 7.0.