Начиная с PHP 5.6 можно определить постоянный массив следующим образом:
const MY_CONSTANT = array('fruit'=>'apple');
Однако мне не ясно, как именно я могу получить доступ к элементам массива, которые используют ключи или индексы. PhpStorm жалуется на синтаксическую ошибку, когда я пытаюсь сделать это так:
self::MY_CONSTANT['fruit'];
Используемый синтаксис в порядке и должен работать на 5.6+
PhpStorm показывает ошибку из-за выдающегося ошибка; полная поддержка константных массивов была завершена после первого релиза-кандидата, так что это не совсем удивительно 😉
Начиная с 8.0.3 вы уже можете определять постоянные массивы, но вам нужно косвенно ссылаться на них, т.е.
$tmp = self::MY_CONSTANT;
echo $tmp['fruit'];
Других решений пока нет …