首頁 >後端開發 >php教程 >php無限極分類的方法

php無限極分類的方法

墨辰丷
墨辰丷原創
2018-06-05 17:25:551478瀏覽

本篇主要介紹php無限極分類的方法,有興趣的朋友參考下,希望對大家有幫助。

程式碼如下:

<?php
$conn = mysql_connect("localhost","admin","admin");
mysql_select_db("people_shop",$conn);
mysql_query("SET NAMES &#39;UTF-8&#39;");
$class_arr=array();
$sql = "select * from ecs_brand ORDER BY brand_id asc ";
$query = mysql_query($sql);
while($row = mysql_fetch_array($query)){
  $class_arr[] = array($row[&#39;brand_id&#39;],$row[&#39;brand_name&#39;],$row[&#39;parent_id&#39;],$row[&#39;sort_order&#39;]);
}
function dafenglei_select($m,$id,$index)
{  
  global $class_arr;
  global $str;
  $n = str_repeat("    ",$m);
  // $n = $m;
  for($i=0;$i<count($class_arr);$i++){
    if($class_arr[$i][&#39;2&#39;]==$id){
      if($class_arr[$i][&#39;0&#39;]==$index){
        $str.= "<option value=\"".$class_arr[$i][0]."\" selected=\"selected\">".$n.$class_arr[$i][1]."</option>\n";
      }else{
        $str.= "<option value=\"  ".$class_arr[$i][0]."\">".$n.$class_arr[$i][1]."</option>\n";
      }
      dafenglei_select($m+1,$class_arr[$i][0],$index);    
    }
  }
  return $str;
}
$aa = dafenglei_select(1,0,0);
?>
<select name="parent_id">
<option value=&#39;0&#39;>顶级分类</option>
<?php
 echo $aa;
?>
</select>

如果是用smarty的話
再加一個

程式碼如下:

$smarty->assign('wuxian_class',$aa);


在html頁面加上這句話就可以了

<select name="parent_id">
<option value=&#39;0&#39;>顶级分类</option>
{$wuxian_class}
</select>

還有一個問題要注意$str必須要是global行的,否則會有錯誤。

無限極分類的延伸:

我們可以寫一個函數,每次調用這個函數的時候我們只需要傳入這個數組及數據,就可以調用了,以下是我寫的一個方法。

function dafenglei_select(& $arr=array(),$m,$id,$index)
{  
  // global $class_arr;
  global $str;
   $n = str_repeat("    ",$m);
  // $n = $m;
  for($i=0;$i<count($arr);$i++){
    if($arr[$i][&#39;2&#39;]==$id){
      if($arr[$i][&#39;0&#39;]==$index){
        $str.= "<option value=\"".$arr[$i][0]."\" selected=\"selected\">".$n.$arr[$i][1]."</option>\n";
      }else{
        $str.= "<option value=\"  ".$arr[$i][0]."\">".$n.$arr[$i][1]."</option>\n";
      }
      dafenglei_select($arr,$m+1,$arr[$i][0],$index);
    }
  }
   return $str;
}

總結:以上就是這篇文章的全部內容,希望能對大家的學習有所幫助。

相關推薦:

#基於thinkPHP實作的微信自訂分享功能的方法

php版微信發紅包介面用法實例

php基於glob函數實作遍歷檔案與目錄詳解

以上是php無限極分類的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn