tonyfly
乞丐
UID 69635
精华
0
积分 -1
帖子 13
金钱 -1 喜悦币
威望 0
人脉 0
阅读权限 1
注册 2006-3-15
状态 离线
|
[广告]: Enom域名自助付费 自助注册 自助PUSH 主流域名COM等一律57.99元年
刚学PHP,总是读到读不懂的函数,头大
求高手指导我一下这个代码,我看了很久读不懂,是用递归函数实现多级树型菜单的:
<?php
function my_menu($menu_content,$i,$menu_grade_temp,$menu_superior_temp) {
global $PHP_SELF;
$temp1=$menu_grade_temp+1;
$menu_superior_temp_array=split("/",$menu_superior_temp);
for($t=0; $t<$i; $t++) {
$menu_array=split("/",$menu_content[$t]);
if(($menu_array[2]==$menu_grade_temp)&&($menu_array[3]==$menu_superior_temp_array[$menu_grade_temp-1])) {
for($p=0; $p<=$menu_grade_temp; $p++) {
echo(" ");
}
$temp3=$menu_superior_temp_array;
$temp3[$menu_grade_temp]=$menu_array[0];
$temp2=implode("/",$temp3);
if($menu_array[0]==$menu_superior_temp_array[$temp1-1]) {
$temp5=$temp1-1;
$temp3[$menu_grade_temp]=="";
$temp6=implode("/",$temp3);
echo("<a href=\"$PHP_SELF?menu_grade_temp".$temp5."&menu_superior_temp=$temp6\">$menu_array[1]</a><br>");
my_menu($menu_content,$i,$temp1,$temp2);
}
else {
$temp3[$menu_grade_temp+1]="";
$temp6=implode("/",$temp3);
echo("<a href=\"PHP_SELF?menu_grade_temp=".$temp1."&menu_superior_temp=$temp6\">$menu_array[1]</a><br>");
}
}
}
}
$db_host="localhost:6033";
$db_user="root";
$db_password="root";
$db_name="treemenu";
mysql_connect($db_host,$db_user,$db_password);
mysql_select_db($db_name);
$query_string="select * from treemenu order by menu_grade";
$db_data=mysql_query($query_string);
if($menu_grade_temp=="") {
$menu_superior_temp=0;
}
$i=0;
while(list($menu_id,$menu,$menu_grade,$menu_superior)=mysql_fetch_row($db_data)) {
$menu_content[$i]=$menu_id."/".$menu."/".$menu_grade."/".$menu_superior;
$i++;
}
my_menu($menu_content,$i,1,$menu_superior_temp);
?>
[ 本帖最后由 tonyfly 于 2006-7-20 02:28 PM 编辑 ]
|
|