PHP使每个循环的数组更深入一级

我试图遍历一个数组,每次都向另一个数组添加新级别.让我说明一下-变量$arr的值每次都不同

$arr = array("1","5","6");

循环

$index[$arr[0]];

循环

$index["1"][$arr[1]]  // "1" since this key was filled in by the previous loop, continuing with a new key

循环

$index["1"]["5"][$arr[2]] // same as previous loop

-遍历$arr的所有项目,完成,结果为$index [“ 1”] [“ 5”] [“ 6”]-

问题是我不知道$arr数组包含多少值.然后,当$arr的第一个值循环到下一个数组级别(换句话说:添加另一个键)时,我不知道如何从$index [“ 1”]继续.

任何人?

解决方法:

您可以在此处使用参考:

$a = array("1","5","6");
$b = array();
$c =& $b;

foreach ($a as $k) {
    $c[$k] = array();
    $c     =& $c[$k];
}

输出

Array 
    (
    [1] => Array
        (
            [5] => Array
                (
                    [6] => Array
                        (
                        )
                )
        )
)

要用其他值覆盖最后一个元素,只需添加以下行:

$c = 'blubber';

循环结束后,因为$c是对循环最深的数组级别的引用,所以在循环结束时.

上一篇:在python的嵌套字典中添加键


下一篇:python – 嵌套字典的类似对象的属性访问