数组值作为变量名
Array Value as Variable Name
我最近发现了另一个 Whosebug 问题,内容如下:
$segments = array(
"key1" =>"111",
"key2" =>"222",
"key3" =>"333",
"key4" =>"444"
);
我想要这些:
$key1 has the value of "111";
$key2 has the value of "222";
$key3 has the value of "333";
$key4 has the value of "444";
答案是使用 extract($segments)
。
我想实现一些不一样的东西,我有以下数组
$test = array('hello','world');
理想情况下我想遍历它们并使用数组值作为变量名,例如:
$test2 = array('hello','world');
foreach($test as $v)
{
$$v = $v;
}
因此在循环之后我可以回显说 $hello
这将导致输出 hello
.
谁能告诉我如何实现这一目标。如果有一个没有循环等的方法,那就太好了。我意识到我的示例可以以不同的方式完成,因此这个问题是多余的,但出于好奇和我的知识,我提出了这个问题。
数组更好,你很少需要 extract
或可变变量,但这是一种方式(仅供参考):
$test2 = array('hello','world');
extract(array_combine($test2, $test2));
我最近发现了另一个 Whosebug 问题,内容如下:
$segments = array(
"key1" =>"111",
"key2" =>"222",
"key3" =>"333",
"key4" =>"444"
);
我想要这些:
$key1 has the value of "111";
$key2 has the value of "222";
$key3 has the value of "333";
$key4 has the value of "444";
答案是使用 extract($segments)
。
我想实现一些不一样的东西,我有以下数组
$test = array('hello','world');
理想情况下我想遍历它们并使用数组值作为变量名,例如:
$test2 = array('hello','world');
foreach($test as $v)
{
$$v = $v;
}
因此在循环之后我可以回显说 $hello
这将导致输出 hello
.
谁能告诉我如何实现这一目标。如果有一个没有循环等的方法,那就太好了。我意识到我的示例可以以不同的方式完成,因此这个问题是多余的,但出于好奇和我的知识,我提出了这个问题。
数组更好,你很少需要 extract
或可变变量,但这是一种方式(仅供参考):
$test2 = array('hello','world');
extract(array_combine($test2, $test2));