PHP開發分類技術之下拉菜單式分類(二)

我們先定義一個函數getList, 父類別pid=0;

使用SQL語句查詢子類別。

把查詢出來的子類別經由while循環出來,然後給加上了"| -- "樣式,

遞迴是函數本身呼叫自身的技巧,我們在查詢子類別的時候需要呼叫到getList($row['id']);

子類別的ID要作為下一層的ID所以要在後面帶入$row['id'])

然後print_r來列印輸出樣式。

<?php
function getList($pid=0,&$result=array(),$space=0){
  global $link;
  $space=$space+2;
  $sql="select * from class where pid = $pid";
  $res = mysqli_query($link,$sql);
  while ($row = mysqli_fetch_assoc($res)){
    $row['title']=str_repeat(' ',$space).'|-- '.$row['title'];
    $result[]=$row;
    getList($row['id'],$result,$space);
  }
  return $result;
}
$rs=getList();
print_r($rs);
?>
繼續學習
||
<?php header("content-type:text/html;charset=utf8"); $link = mysqli_connect('localhost','username','password','test'); mysqli_set_charset($link, "utf8"); if (!$link) { die("连接失败:".mysqli_connect_error()); } function getList($pid=0,&$result=array(),$space=0){ global $link; $space=$space+2; $sql="select * from class where pid = $pid"; $res = mysqli_query($link,$sql); while ($row = mysqli_fetch_assoc($res)){ $row['title']=str_repeat(' ',$space).'|-- '.$row['title']; $result[]=$row; getList($row['id'],$result,$space); } return $result; } $rs=getList(); print_r($rs); ?>