Написание:
define ("MYARR", array(
'TITLE' => "MY TITLE",
) );
И выдача:
print_r(MYARR);
Ошибка не возвращается. Все нормально! Я показываю:
Array
(
[TITLE] => MY TITLE
)
Но если я напишу:
define ("MYARR['TITLE']", "MY TITLE");
, я не получаю ошибку, но даю:
print_r(MYARR);
Я получаю:
Warning: Use of undefined constant MYARR - assumed 'MYARR'
И давая:
echo MYARR['TITLE'];
Я получаю два предупреждения:
1) Warning: Use of undefined constant MYARR
2) Warning: Illegal string offset 'TITLE'
О первом предупреждении, это неверно, потому что это можно увидеть выше заявлено! Я думаю, что это ошибка PHP. Со стороны разрешено объявлять константу массива, но с другой стороны не допускается. Каково ваше мнение?