php 无限极分类
程序员文章站
2022-04-14 23:05:02
/* *@pram $array 数组 *@pram $pid 子id *@pram $level 等级 0 最* 以此类推 */ function test($array,$pid=0,$level=0){ //定义数组存放找到的数据,静态防止覆盖 static $list=[]; foreac ......
/*
*@pram $array 数组
*@pram $pid 子id
*@pram $level 等级 0 最* 以此类推
*/
function test($array,$pid=0,$level=0){
//定义数组存放找到的数据,静态防止覆盖
static $list=[];
foreach ($array as $key => $value) {
//判断,先找到*栏目
if($value['pid']==$pid){
//找到*栏目后加标识,最*level=0
$value['level']=$level;
//找到所需栏目保存到事先定义好的list数组中
$list[]=$value;
//然后销毁当前已找到的数据的key,避免下次重复递归,消耗资源
nuset($array[$key]);
//开始递归,找完pid=0,找pid=1的,level+1。以此类推。
test($array,$value['id'],$level+1);
}
}
return $list;
}