php 多级领航显示
程序员文章站
2022-05-16 11:09:02
...
php 多级导航显示
写一次,想一次...重新做一次...? 这回就放这了..以后用直接过来copy.
第一段代码
得到要显示的类别.
一级目录放在categories[0],
二级目录放在categories[1],
三级目录放在categories[2],
....以此类推
不过一般最多到3级就不再往下分了.
$cpath = array(); if(!empty($_REQUEST["parentId"])){ //category path //get the category path //put current category id in $cpath $current_category["parentId"] = $_REQUEST["parentId"]; // put parent category id in $cpath do{ array_unshift($cpath,$current_category["parentId"]); $data_category = array( "id" => $current_category["parentId"] ); $current_category = array(); $current_category = pos($db_conn->search($db_category,$data_category)); }while(!empty($current_category["parentId"])); } //add the first level category parentId array_unshift($cpath,"null"); // get all categories $categories_level_count = sizeof($cpath); for($i=0;$i $cpath[$i] ); //get first level categories $categories[$i] = $db_conn->search($db_category,$data_category); // echo $db_category->search($data_category).""; }
第二段代码是将菜单以
-
?
-
-
...
的形式显示菜单
function show_left_navigation($i){ global $categories,$cpath; if(empty($categories[$i])) return; echo '
- ';
foreach($categories[$i] as $id=>$category){
echo '';
if($id==end($cpath))
echo ''.$category["name"].'';
else
echo ''.$category["name"].'';
if(in_array($id,$cpath))
show_left_navigation($i+1);
echo '';
}
echo '
?
?
相关文章
相关视频