本篇为大家介绍一下递归的经典案例。
一、什么是递归函数?
一个函数在它的函数体内调用它自身称为递归调用。 这种函数称为递归函数。
二、几行看懂php递归
function recursion($i){ if($i<1){ exit; // 递归出口 } echo $i."<br/>"; 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 "<pre class="brush:php;toolbar:false">"; print_r($array);
效果图
更多PHP相关知识,请访问PHP中文网!
Atas ialah kandungan terperinci php递归经典案例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!