一、什麼是遞回函數?
一個函數在它的函數體內呼叫它自身稱為遞回呼叫。 這種函數稱為遞回函數。
二、幾行看懂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>"; print_r($array);
效果圖
以上就是php遞回經典案例的詳細內容,更多請關注TW511.COM其它相關文章!