我有一个多维数组,我想根据键创建新的变量.
我写了这段代码,但它返回NULL:
$a = array("test" => array("a", "b", "c"));
foreach($a as $key => $value){
if(is_array($value)){
$i = 0;
foreach($value as $v){
$i++;
$$key[$i] = $v;
}
}
}
var_dump($test);
?>
Run Code Online (Sandbox Code Playgroud)
问题出在哪儿?
这样做:
${$key}[$i] = $v;
Run Code Online (Sandbox Code Playgroud)
$$key[$i]表示"名称为的变量$key[$i]".${$key}[$i]表示" $i名称为$key" 的变量的位置.此外,如果您可以初始化该$test数组会很好,所以您不会收到通知.在第二个之前添加以下内容foreach:
$$key = array();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
261 次 |
| 最近记录: |