PHP 无限级分类
有一段时间没用过无限极分类,不巧今天又用到,所以特地去翻箱回顾以前。为了避免以后找起来麻烦,特地贴在这里。
unlimitedForLevel($cate,$html,$v['id'],$level+1));
}
}
return$arr;
}
/**
*返回多维数组
*@param[type]$cate要递归的数组
*@paramstring$name子级分类在父分类数组中的key
*@paraminteger$pid父级分类ID。默认为0,表示顶级分类
*@return[type][description]
*/
staticpublicfunctionunlimitedForlayer($cate,$name='child',$pid=0){
$arr=array();
foreach($cateas$v){
if($v['pid']==$pid){
$v[$name]=self::unlimitedForlayer($cate,$name,$v['id']);
$arr[]=$v;
}
}
return$arr;
}
/**
*传递子分类ID返回所有父级分类
*@param[type]$cate要递归的数组
*@param[type]$id子分类ID
*@return[type][description]
*/
staticpublicfunctiongetParents($cate,$id){
$arr=array();
foreach($cateas$v){
if($v['id']==$id){
$arr[]=$v;
$arr=array_merge(self::getParents($cate,$v['pid']),$arr);
}
}
return$arr;
}
/**
*传递父级分类ID返回所有子分类ID
*@param[type]$cate要递归的数组
*@param[type]$pid父级分类ID
*@return[type][description]
*/
staticpublicfunctiongetChildrenId($cate,$pid){
$arr=array();
foreach($cateas$v){
if($v['pid']==$pid){
$arr[]=$v['id'];
$arr=array_merge($arr,self::getChildrenId($cate,$v['id']));
}
}
return$arr;
}
/**
*传递父级分类ID返回所有子级分类
*@param[type]$cate要递归的数组
*@param[type]$pid父级分类ID
*@return[type][description]
*/
staticpublicfunctiongetChildren($cate,$pid){
$arr=array();
foreach($cateas$v){
if($v['pid']==$pid){
$arr[]=$v;
$arr=array_merge($arr,self::getChildren($cate,$v['id']));
}
}
return$arr;
}
}
?>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持毛票票!
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语