|
|
|
| Подскажите как лучше преобразовать ключи ассоциативного массив в переменные
к примеру
$params = array ('one' => 1, 'two' => 2, 'six' => 'hello');
|
чтобы получились переменные
$one, $two, $six
я нашел 2 способа
<?
// 1 способ
foreach ($params as $key => $value) {
${$key} = $value;
}
unset($key, $value);
// 2 способ
extract($params);
|
Может есть другие решения, если нет, то стоит ли использовать 2 способ | |
|
|
|
|
|
|
|
для: Visavi
(01.02.2014 в 01:51)
| | extract это штатная функция, зачем вместо неё использовать самопал?
другое дело зачем вам вообще это понадобилось? | |
|
|
|
|
|
|
|
для: Visavi
(01.02.2014 в 01:51)
| | если бы были варианты лучше чем extract, на страницы с этой функцией были бы на неё ссылки. там же было бы написано, что её нежелательно использовать | |
|
|
|
|
|
|
|
для: psychomc
(01.02.2014 в 12:16)
| | сама то функция неплохая, но вот кроме использования её в "дурных" целях (оживлять скрипты с регистр глобалс) других вариантов я не встречал. Оно и без неё с массивом хорошо работается. | |
|
|
|
|
|
|
|
для: Valick
(01.02.2014 в 12:28)
| | в общем-то да. я тоже не люблю, когда переменные магическим образом берутся ниоткуда, и IDE не любит. раньше когда-то использовали, когда писали с этими самыми глобалс. ну их нах | |
|
|
|