第一种方法:
您可以使用标准PHP库(SPL)来“隐藏”递归。
$a = array(1,2,array(3,4, array(5,6,7), 8), 9);
$it = new RecursiveIteratorIterator(new RecursiveArrayIterator($a));
foreach($it as $v) {
echo $v, \" \";
}
输出结果:
1 2 3 4 5 6 7 8 9
第二种方法:
从PHP 5.3开始,最短的解决方案似乎是array_walk_recursive()使用新的闭包语法:
function flatten(array $array) {
$return = array();
array_walk_recursive($array, function($a) use (&$return) { $return[] = $a; });
return $return;
}
第三种方法:
自定义函数法
function array_flatten($array) {
$return = array();
foreach ($array as $key => $value) {
if (is_array($value)){
$return = array_merge($return, array_flatten($value));
} else {
$return[$key] = $value;
}
}
return $return;
}
$array = Your array
$result = array_flatten($array);
echo \"<pre>\";
print_r($result); 继续阅读与本文标签相同的文章
上一篇 :
php使用Mail()函数发送带附件的邮件
-
2018年度重庆市科学技术奖获奖成果152项!集中在大数据、人工智能、智能制造等领域
2026-05-15栏目: 教程
-
瑞星连续捕获一个高级持续性威胁的网络攻击
2026-05-15栏目: 教程
-
word中怎么输入不认识的字
2026-05-15栏目: 教程
-
南大生态智慧城产业空间布局规划
2026-05-15栏目: 教程
-
3年前说要“摧毁人类”的机器人,被授予公民身份后,现在过的咋样
2026-05-15栏目: 教程
