本篇為大家介紹一下遞迴的經典案例。
一、什麼是遞迴函數?
一個函數在它的函數體內呼叫它本身稱為遞歸呼叫。這種函數稱為遞歸函數。
二、幾行看懂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中文網!
以上是php遞迴經典案例的詳細內容。更多資訊請關注PHP中文網其他相關文章!