本篇为大家介绍一下递归的经典案例。
一、什么是递归函数?
一个函数在它的函数体内调用它自身称为递归调用。 这种函数称为递归函数。
二、几行看懂php递归function recursion($i){
if($i<1){
exit; // 递归出口
}
echo $i."
";
recursion($i-1);
}
recursion(10); // 浏览器将显示从10显示到1
效果图
三、通过递归,列出省市区$item = array(
array('id'=>1,'pid' => 0, 'name'=>'广东省' ),
array('id'=>2,'pid' => 0, 'name'=>'广西省' ),
array('id'=>3,'pid' => 1, 'name'=>'深圳市' ),
array('id'=>4,'pid' => 3, 'name'=>'宝安区' ),
array('id'=>5,'pid' => 1, 'name'=>'广州市' ),
);
function recursion($array, $pid = 0){
$arr = array();
foreach ($array as $v) {
if ($v['pid'] == $pid) {
$temp = array();
$temp = recursion($array, $v['id']);
//判断是否存在子数组
if($temp)
{
$v['son'] = $temp;
}
$arr[] = $v;
}
}
return $arr;
}
$array = recursion($item);
echo "
";
print_r($array);
效果图
更多PHP相关知识,请访问PHP中文网!