php代码
<?php Class Category{ //一维数组无限级分类 Static Public function yiwei($cate,$pid=0){ $arr=array(); foreach($cate as $v){ if($v['pid'] == $pid){ $arr[]=$v; $arr=array_merge($arr,self::yiwei($cate,$v['id'])); } } return $arr; } //二位数组无限级分类 Static Public function erwei($cate,$pid=0){ $arr=array(); foreach($cate as $v){ if($v['pid'] == $pid){ $v['child']=self::erwei($cate,$v['id']); $arr[]=$v; } } return $arr; } //通过子级寻找父级 Static Public function findFather($cate,$id){ $arr=array(); foreach($cate as $v){ if($v['id'] == $id){ $arr[]=$v; $arr=array_merge($arr,self::findFather($cate,$v['pid'])); } } return $arr; } //通过父级寻找子级 Static Public function findChild($cate,$pid){ $arr=array(); foreach($cate as $v){ if($v['pid'] == $pid){ $arr[]=$v['id']; $arr=array_merge($arr,self::findChild($cate,$v['id'])); } } return $arr; } } ?>