[php递归方法实现的]php递归方法实现无限分类实例

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

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

数组:

 代码如下

$items = array(
 array("id" => 1, "pid" => 0, "name" => "一级11" ),
 array("id" => 11, "pid" => 0, "name" => "一级12" ),
 array("id" => 2, "pid" => 1, "name" => "二级21" ),
 array("id" => 10, "pid" => 11, "name" => "二级22" ),
 array("id" => 3, "pid" => 1, "name" => "二级23" ),
 array("id" => 12, "pid" => 11, "name" => "二级24" ),
 array("id" => 13, "pid" => 12, "name" => "三级31" ),
 array("id" => 9, "pid" => 1, "name" => "二级25" ),
);

函数:

 代码如下

function formatTree($array, $pid = 0){
 $arr = array();
 $tem = array();
 foreach ($array as $v) {
  if ($v["pid"] == $pid) {
   $tem = formatTree($array, $v["id"]);
                        //判断是否存在子数组
   $tem && $v["son"] = $tem;
   $arr[] = $v;
  }
 }
 return $arr;
}

其中,数组一定要包含id和pid用以指定数组值之间的层级关系

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

猜你感兴趣