php菜单递归(php递归函数桃子一天吃一半)

华为云服务器特价优惠火热进行中!

2核2G2兆仅需 38 元;4核4G3兆仅需 79 元。购买时间越长越优惠!更多配置及优惠价格请咨询客服。

合作流程:
1、点击链接注册/关联华为云账号:点击跳转
2、添加客服微信号:cloud7591,确定产品方案、价格方案、服务支持方案等;
3、客服协助购买,并拉微信技术服务群,享受一对一免费技术支持服务;
技术专家在金蝶、华为、腾讯原厂有多年工作经验,并已从事云计算服务8年,可对域名、备案、网站搭建、系统部署、AI人工智能、云资源规划等上云常见问题提供更专业靠谱的服务,对相应产品提供更优惠的报价和方案,欢迎咨询。

今天给各位分享php菜单递归的知识,其中也会对php递归函数桃子一天吃一半进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

微信号:cloud7591
如需了解更多,欢迎添加客服微信咨询。
复制微信号

本文目录一览:

PHP递归树形菜单

可以参考以下代码,但需要把你自己的数据库链接,表等改一下就可以了

html

head

link href='style.css' rel=stylesheet

meta http-equiv="Content-Type" content="text/html; charset=utf-8" /

script language="JavaScript" src="TreeMenu.js"/script

/head

body

?php

//基本变量设置

$GLOBALS["ID"] =1; //用来跟踪下拉菜单的ID号

$layer=1; //用来跟踪当前菜单的级数

//连接数据库

$Con=mysql_connect("localhost","root","1234");

mysql_select_db("wiki");

//提取一级菜单

$sql="SELECT * FROM wiki where pid=0";

$result=mysql_query($sql,$Con);

//如果一级菜单存在则开始菜单的显示

if(mysql_num_rows($result)0) ShowTreeMenu($Con,$result,$layer,$ID);

//=============================================

//显示树型菜单函数 ShowTreeMenu($con,$result,$layer)

//$con:数据库连接

//$result:需要显示的菜单记录集

//layer:需要显示的菜单的级数

//=============================================

function ShowTreeMenu($Con,$result,$layer)

{

//取得需要显示的菜单的项目数

$numrows=mysql_num_rows($result);

//开始显示菜单,每个子菜单都用一个表格来表示

echo "table cellpadding='0' cellspacing='0' border='0'";

for($rows=0;$rows$numrows;$rows++)

{

//将当前菜单项目的内容导入数组

$menu=mysql_fetch_array($result);

//提取菜单项目的子菜单记录集

$sql="select * from wiki where pid=$menu[cid]";

$result_sub=mysql_query($sql,$Con);

echo "tr";

//如果该菜单项目有子菜单,则添加JavaScript onClick语句

if(mysql_num_rows($result_sub)0)

{

echo "td width='20'img src='folder.gif' border='0'/td";

echo "td class='Menu' onClick='javascript:ShowMenu(Menu".$GLOBALS["ID"].");'";

}

else

{

echo "td width='20'img src='file.gif' border='0'/td";

echo "td class='Menu'";

}

//如果该菜单项目没有子菜单,并指定了超级连接地址,则指定为超级连接,

//否则只显示菜单名称

//if($menu[url]!="")

//echo "a href='$menu[cid]'$menu[name]/a";

//else

echo $menu['name'];

echo "

/td

/tr

";

//如果该菜单项目有子菜单,则显示子菜单

if(mysql_num_rows($result_sub)0)

{

//指定该子菜单的ID和style,以便和onClick语句相对应

echo "tr id=Menu".$GLOBALS["ID"]++." style='display:none'";

echo "td width='20' /td";

echo "td";

//将级数加1

$layer++;

//递归调用ShowTreeMenu()函数,生成子菜单

ShowTreeMenu($Con,$result_sub,$layer);

//子菜单处理完成,返回到递归的上一层,将级数减1

$layer--;

echo "/td/tr";

}

//继续显示下一个菜单项目

}

echo "/table";

}

?

/body

/html

php 几种常用的递归 无限极分类

 /**

     * 递归实现无限极分类

     * @param $array 分类数据

     * @param $pid 父ID

     * @param $level 分类级别

     * @return $list 分好类的数组 直接遍历即可 $level可以用来遍历缩进

     */

    function getTree($array, $pid =0, $level = 0){

        //声明静态数组,避免递归调用时,多次声明导致数组覆盖

        static $list = [];        foreach ($array as $key = $value){            //第一次遍历,找到父节点为根节点的节点 也就是pid=0的节点

            if ($value['pid'] == $pid){                //父节点为根节点的节点,级别为0,也就是第一级

                $value['level'] = $level;                //把数组放到list中

                $list[] = $value;                //把这个节点从数组中移除,减少后续递归消耗

                unset($array[$key]);                //开始递归,查找父ID为该节点ID的节点,级别则为原级别+1

                getTree($array, $value['id'], $level+1);

            }

        }

php 递归问题

第一,没有选择数据库,在连接数据库后添加mysql_select_db("数据库名");

第二、我感觉不代码不全吧,因为我拷下来看了一下,少一},当然上面那个没少,补充的少了。

第三、还有没看出这个$ii是干什么用的。

第四、没感觉$selec=0与不等于0输出有什么不同。

第五、以后最好是把html代码与程序分开写。

因为不知道需求,只能根据你的程序简单修改如下:

?php

function TreeMenu($selec) {

$Conn=mysql_connect("localhost","kk","kk123");

mysql_select_db("数据库名");

$ii=1;

$sql="select * from tvmenu where bid=".$selec;

$result=mysql_query($sql,$Conn);

$str = "";

while($row =mysql_fetch_array($result)) {

if($selec=0) {

$str = 'option value="'.$row['id'].'"'.$row['name'].'/option ';

}else {

$str = 'option value="'.$row['id'].'"'.$row['name'].'/option ';

}

echo $str;

$ii++;

TreeMenu($row['id']);

$ii--;

}

}

?

select name="bid" id="bid"

?php

TreeMenu(0);

?

/select

求PHP 递归的写法

function style($id,$i){

static $i;

$sql="select * from sort where id=".$id;

$rs1=mysql_query($sql);

while($rsd=mysql_fetch_array($rs1)){

style($rsd['type_id'],++$i);

}

return $i;

}

关于php菜单递归和php递归函数桃子一天吃一半的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

发布于 2023-03-06 21:03:19
收藏
分享
海报
54
目录

    忘记密码?

    图形验证码

    复制成功
    微信号: cloud7591
    如需了解更多,欢迎添加客服微信咨询。
    我知道了