Духовность™
Продвинутый новичок
Синтаксис: массивы, return...
Почему не работает конструкция:
что мешает интерпритатору корректно обрабатывать этот код? 
У меня есть реальный код:
не сложно понять, что хочу - не хочу создавать лишнюю переменную $get при любой нужде получить значение из объекта $Request->getGet(). __get тут не поможет, ибо юзаю ArrayAccess с возможностью многомерного доступа (echo $obj['a']['b']['c']).
Кстати, в JS это работает без проблем, ибо любой хэш там - объект, а доступ к элементу объекта как к массиву
удобно.
Почему не работает конструкция:
PHP:
function getarray()
{
return array('key' => 'value');
}
echo getarray()['key'];

У меня есть реальный код:
PHP:
$Request = Request::getInstance();
// Получили в $get объект, реализующий интерфейс ArrayAccess
$get = $Request->getGet();
echo $get['key']; // работает
$Request->getGet()['key']; // Parse error: syntax error, unexpected '[' in Z:\home\test\www\index.php on line 19
Кстати, в JS это работает без проблем, ибо любой хэш там - объект, а доступ к элементу объекта как к массиву
PHP:
function foo()
{
return arr = {'key': 'val'};
}
alert (foo()['key']);

