我试图将数组的键提取为变量。我有以下代码:
01 | $array = [
02 | "bantya" => "BANTYA",
03 | "sontya" => "SONTYA",
04 | "niltya" => "NILTYA"
05 | ];
06 |
07 | function makeVar ($array) {
08 | foreach ($array as $key => $value) {
09 | $$key = $value;
10 | }
11 | echo $bantya;
12 | }
13 |
14 | makeVar($array);
15 | echo $bantya;
问题是,第11行正确地呼应了“bantya”,但第15行的情况却不一样。上面写着:
Notice: Undefined variable: bantya in file\path on line 15
我的问题是,为什么会显示出这个错误?如何使第15行在声明
function makeVar($array)
函数后全局输出“bantya”(不在makeVar
的范围内)?提前谢谢..
最佳答案
我想那会有帮助的。在php中使用extract()
。参见下面的示例$array = ( "bantya" => "BANTYA", "sontya" => "SONTYA", "niltya" => "NILTYA" ); extract($array); var_dump($bantya);
你得到新的变量:$bantya
,$sontya
,$niltya
关于php - 如何从数组键制作变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39179914/