相关疑难解决方法(0)

如何展平多维数组?

在PHP中,是否可以在不使用递归或引用的情况下展平(双/多)维数组?

我只对值感兴趣所以可以忽略键,我正在考虑array_map()array_values().

php arrays flatten multidimensional-array

241
推荐指数
13
解决办法
22万
查看次数

PHP在保留键的同时遍历多维数组

我有一个多维数组,其中我无法知道深度.例如,数组可能如下所示:

$array = array(
    1 => array(
        5 => array(
            3 => 'testvalue1'
        )
    ),
    2 => array(
        6 => 'testvalue2'
    ),
    3 => 'testvalue3',
    4 => 'testvalue4',
);
Run Code Online (Sandbox Code Playgroud)

有了这个数组,我想创建一个目录.这意味着需要保留密钥,因为我将它们用作"章节编号".例如,"testvalue1"在第1.5.3章中.
现在我想在保留所有键的同时遍历数组 - 不使用array_walk_recursive,因为包含另一个数组的键被删除(正确?),并且考虑到速度,最好不使用嵌套的foreach循环.
有什么建议我应该怎么做?提前致谢.

PS:对于我的脚本,如果键是字符串("1"而不是1)或整数,则无关紧要,如果将字符串作为键将使array_walk_recursive保留它们.

php arrays loops multidimensional-array

1
推荐指数
1
解决办法
6585
查看次数

标签 统计

arrays ×2

multidimensional-array ×2

php ×2

flatten ×1

loops ×1