php多级树形菜单|php多级树形菜单代码

更新时间:2019-07-24    来源:php常用代码    手机版     字体:

【www.bbyears.com--php常用代码】

数据库结果

 

php多级树形菜单代码


打印如下:

 代码如下 array(7) {
  [0] => array(5) {
    ["id"] => string(1) "4"
    ["fzname"] => string(12) "山猫小号"
    ["userid"] => string(2) "12"
    ["pid"] => string(1) "0"
    ["time"] => string(10) "1413359977"
  }
  [1] => array(5) {
    ["id"] => string(1) "5"
    ["fzname"] => string(12) "山猫一组"
    ["userid"] => string(2) "12"
    ["pid"] => string(1) "4"
    ["time"] => string(10) "1413361206"
  }
  [2] => array(5) {
    ["id"] => string(1) "6"
    ["fzname"] => string(12) "山猫二组"
    ["userid"] => string(2) "12"
    ["pid"] => string(1) "4"
    ["time"] => string(10) "1413361225"
  }
  [3] => array(5) {
    ["id"] => string(1) "7"
    ["fzname"] => string(15) "山猫一组子"
    ["userid"] => string(2) "12"
    ["pid"] => string(1) "5"
    ["time"] => string(10) "1413361388"
  }
  [4] => array(5) {
    ["id"] => string(1) "8"
    ["fzname"] => string(15) "山猫一组子"
    ["userid"] => string(2) "12"
    ["pid"] => string(1) "5"
    ["time"] => string(10) "1413361409"
  }
  [5] => array(5) {
    ["id"] => string(1) "9"
    ["fzname"] => string(16) "山猫一组子3"
    ["userid"] => string(2) "12"
    ["pid"] => string(1) "5"
    ["time"] => string(10) "1413361460"
  }
  [6] => array(5) {
    ["id"] => string(2) "10"
    ["fzname"] => string(15) "山猫二组子"
    ["userid"] => string(2) "12"
    ["pid"] => string(1) "6"
    ["time"] => string(10) "1413361506"
  }
}

结果:

 

php多级树形菜单代码


 打印如下:

 代码如下 array(1) {
  [0] => array(5) {
    ["id"] => string(1) "4"
    ["fzname"] => string(12) "山猫小号"
    ["userid"] => string(2) "12"
    ["pid"] => array(2) {
      [0] => array(5) {
        ["id"] => string(1) "5"
        ["fzname"] => string(12) "山猫一组"
        ["userid"] => string(2) "12"
        ["pid"] => array(3) {
          [0] => array(5) {
            ["id"] => string(1) "7"
            ["fzname"] => string(15) "山猫一组子"
            ["userid"] => string(2) "12"
            ["pid"] => string(0) ""
            ["time"] => string(10) "1413361388"
          }
          [1] => array(5) {
            ["id"] => string(1) "8"
            ["fzname"] => string(15) "山猫一组子"
            ["userid"] => string(2) "12"
            ["pid"] => string(0) ""
            ["time"] => string(10) "1413361409"
          }
          [2] => array(5) {
            ["id"] => string(1) "9"
            ["fzname"] => string(16) "山猫一组子3"
            ["userid"] => string(2) "12"
            ["pid"] => string(0) ""
            ["time"] => string(10) "1413361460"
          }
        }
        ["time"] => string(10) "1413361206"
      }
      [1] => array(5) {
        ["id"] => string(1) "6"
        ["fzname"] => string(12) "山猫二组"
        ["userid"] => string(2) "12"
        ["pid"] => array(1) {
          [0] => array(5) {
            ["id"] => string(2) "10"
            ["fzname"] => string(15) "山猫二组子"
            ["userid"] => string(2) "12"
            ["pid"] => string(0) ""
            ["time"] => string(10) "1413361506"
          }
        }
        ["time"] => string(10) "1413361225"
      }
    }
    ["time"] => string(10) "1413359977"
  }
}

工用到两个函数1生成树形代码:

 代码如下 function getTree($data, $pId)
{
$tree = "";
foreach($data as $k => $v)
{
   if($v["pid"] == $pId)
   {
    $v["pid"] = $this->getTree($data, $v["id"]);
    $tree[] = $v;
    //unset($data[$k]);
   }
}
return $tree;
}

函数2转化为html代码:

 代码如下 function procHtml($tree)
{
$html = "";
foreach($tree as $t)
{
   if($t["pid"] == "")
   {
    $html .= "{$t["fzname"]}";
   }
   else
   {
    $html .= "".$t["fzname"];
    $html .= $this->procHtml($t["pid"]);
    $html = $html."";
   }
}
return $html ? "".$html."" : $html ;
}

本文来源:http://www.bbyears.com/jiaocheng/59371.html