PHP возвращение произвольного количества параметров из объекта в виде массива. Аналог eval JavaScript. Есть такой в PHP?

Всем привет. Мне нужно в вызываемом классе сформировать несколько переменных и вернуть их. В разных классах могут быть разные переменные. Можно и в ассоциативном массиве, но как восстановить параметры и их значение при получении ? Не хочу писать что-то наподобие

$name = $ar[i]['name']; 
$age = $ar[i]['age'].

В JS сделал бы что-то подобное в цикле:

eval(ar[i]['name'] +"=" ar[i]['value'])

Ответы (1 шт):

Автор решения: Алексей Шиманский

Есть такая вещь как list

list($name, $age) = [ $ar[$i]['name'],  $ar[$i]['age']]

Также с 7.1.0 есть короткий синтаксис

[$name, $age] =  [ $ar[$i]['name'],  $ar[$i]['age']];

Можно написать ещё так:

list('name' => $name, 'age' => $age) = $ar[$i];

Имея ключа в массиве => имя новой переменной;

→ Ссылка