Сопоставление массива при возврате из функции PHP


Испытывая месте (xampp), я могу получить в возвращении функции сопоставления массива. Пример:

<?php $res = $obj->Function()[0]['name']; ?>

И в сервере производства (жилье типичные) формы с интерполяцией выдает ошибку типа "Parse Error";

PHP Parse error: syntax error, unexpected '[' in - path/archive.php on line 10

Как включить наличие, если работать с этим синтаксисом?

Author: thelimarenan, 2016-06-21

2 answers

Эту функцию, которую вы хотите, называется - array dereferencing, и доступны в PHP 5.4 вверх. Согласно документации PHP:

As of PHP 5.4 it is possible to array dereference the result of a function or method call directly. Before it was only possible using a temporary variable.

Это означает, что, то, что раньше вы делали это в PHP 5.3 вниз:

$array = ['a', 'b', 'c'];
echo $array[0]; // a

... может быть упрощена в PHP 5.4 для сверху:

echo ['a', 'b', 'c'][0]; // 1
 1
Author: Rodrigo Rigotti, 2016-06-21 07:36:16

Попробуйте,

<?php $res = $obj->Function();
 echo $res[0]['name'];
?>

Вы получите отдачу и экземпляр в переменной $res ai может манипулировать, как пожелает

 0
Author: , 2016-06-21 04:23:37