递归算法是把问题转化为规模缩小了的同类问题的子问题。然后递归调用函数(或过程)来表示问题的解。
一个过程(或函数)直接或间接调用自己本身,这种过程(或函数)叫递归过程(或函数).
这篇文章主要介绍了PHP使用递归算法无限遍历数组,结合实例形式分析了php针对一维数组、二维数组及多维不规则数组的通用遍历技巧,需要的朋友可以参考下具体如下:<?php
//无限遍历数组
$a1 = array("a", "b", "c"); //一维数组
$a2 = array(array(21, 3, 6), array("a", "b", "c")); //二维数组
$a3 = array(array(array(5, 55), 4, 444), 2, 7, 6, 8, array("w", "d", array(3, 2, "a"), "s")); //多维不规则数组
function fun($a) {
foreach ($a as $val) {
if (is_array($val)) { //如果键值是数组,则进行函数递归调用
fun($val);
} else { // 如果键值是数值,则进行输出
echo "$val
";
} //end if
} //end foreach
} //end fun
//fun($a1);
//fun($a2);
fun($a3);
?>
输出:5
55
4
444
2
7
6
8
w
d
3
2
a
s