通常我会将一系列参数传递给我的函数。
function do_something($parameters) {}
要访问我必须使用的参数:$parameters['param1']
我想做的是,在这个函数中运行某些逻辑,将那个数组转换为普通变量。我的主要原因是,有时我必须传递一大堆参数,并且必须输入$ parameters ['..']是一种痛苦。
foreach($parameters as $key=>$paremeter) {
"$key" = $parameter;
}
我认为这可行..但没有雪茄!
答案 0 :(得分:4)
使用extract()
:
function do_something($parameters) {
extract($parameters);
// Do stuff; for example, echo one of the parameters
if (isset($param1)) {
echo "param1 = $param1";
}
}
do_something(array('param1' => 'foo'));
答案 1 :(得分:3)
尝试$$key=$parameter
。
答案 2 :(得分:1)
答案 3 :(得分:0)
有extract
功能。这就是你想要的。
$array = array('a'=>'dog', 'b'=>'cat');
extract($array);
echo $a; //'dog'
echo $b; //'cat'