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 妈妈生日祝福语简短励志