Разбиение массива на переменные в php - PullRequest
10 голосов
/ 07 декабря 2011

У меня есть этот массив $ display_vars, и я хочу разделить его на отдельные переменные, поэтому имя каждой переменной - это ключ массива, а его значение, так сказать, является значением. Так что, если массив был такой:

$display_vars = array(
'title' => 'something',
'header' => 'something else'
);

Тогда я хочу закончить с эквивалентом этого:

$title = 'something';
$header = 'something else';

Можете ли вы придумать, как я могу это сделать?

Ответы [ 4 ]

13 голосов
/ 07 декабря 2011

Функция extract делает именно это.

См. В действии (включая бонусную ссылку на get_defined_vars).

6 голосов
/ 07 декабря 2011

extract()

Будьте внимательны при перезаписи переменных с одинаковыми именами в текущей области.Прочтите второй параметр, если это вызывает беспокойство.

3 голосов
/ 07 декабря 2011

Использование

extract($display_vars);

http://php.net/manual/en/function.extract.php

0 голосов
/ 21 сентября 2013

Почему вы не используете просто доступ к нему, используя тот же массив?Вызов такой функции, как extract - это просто перегрузка.

<?php
$display_vars = array(
'title' => 'something',
'header' => 'something else'
);

echo $display_vars['title']; //something
echo $display_vars['header']; //something else
...