无线分类

//查询并生成具有等级关系的树状的数组
//参数1:操作的数组
//参数2:用来指定查询哪个分类下面的子类,如果走默认值,就表示查询所有分类
public function getTreeCategory($arr,$p_id=0,$level=0)
{
   static $result = array();
   foreach ($arr as $v){
      //拿到数组中的每一个元素
      if($v['parent_id']==$p_id){
         //说明当前这条记录是$p_id的子类
         $v['level'] = $level;
         $result[] = $v;
         //接着查询当前这个分类下面是否还存在子类
         $this -> getTreeCategory($arr,$v['cat_id'],$level+1);
      }
   }
   return $result;
}