六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

php 無限級分類示例代碼

[摘要]這里首先介紹一下,什么是無限極分類?無限極分類簡單點說就是一個類可以分成多個子類,然后一個子類又可以分另外多個子類這樣無限分下去,就好象windows可以新建一個文件夾,然后在這個文件夾里又可以建一...
這里首先介紹一下,什么是無限極分類?

無限極分類簡單點說就是一個類可以分成多個子類,然后一個子類又可以分另外多個子類這樣無限分下去,就好象windows可以新建一個文件夾,然后在這個文件夾里又可以建一些個文件夾,在文件夾底下還可以建一些文件夾一樣

那php又是如何實現它的無限分類的呢?如何把它的各個分類一一列出來呢?代碼如下

<?php
/**
 * 無限級分類 類
 */
class Category{
 /**
  * 返回一維數組
  * @param [type] $cate 要遞歸的數組
  * @param string $html 子級分類前要顯示的縮進符號。默認 '─'
  * @param integer $pid 父級分類ID。默認為 0,表示頂級分類
  * @param integer $level level級,配合 $html 顯示足夠的縮進。默認為 1,表示頂級分類
  * @return [type]   [description]
  */
 static public function unlimitedForLevel($cate, $html = '─', $pid = 0, $level = 1){
  $arr = array();
  foreach($cate as $v){
   if($v['pid'] == $pid){
    $v['level'] = $level;
    $v['html'] = str_repeat($html, $level - 1);
    $arr[] = $v;
    $arr = array_merge($arr, $this->unlimitedForLevel($cate, $html, $v['id'], $level + 1));
   }
  }
  return $arr;
 }
 /**
  * 返回多維數組
  * @param [type] $cate 要遞歸的數組
  * @param string $name 子級分類在父分類數組中的 key
  * @param integer $pid 父級分類ID。默認為0,表示頂級分類
  * @return [type]  [description]
  */
 static public function unlimitedForlayer($cate, $name = 'child', $pid = 0){
  $arr = array();
  foreach($cate as $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]
  */
 static public function getParents($cate, $id){
  $arr = array();
  foreach($cate as $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]
  */
 static public function getChildrenId($cate, $pid){
  $arr = array();
  foreach($cate as $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]
  */
 static public function getChildren($cate, $pid){
  $arr = array();
  foreach($cate as $v){
   if($v['pid'] == $pid){
    $arr[] = $v;
    $arr = array_merge($arr, self::getChildren($cate, $v['id']));
   }
  }
  return $arr;
 }
}
?>

以上就是php 無限級分類示例代碼的詳細內容,更多請關注php中文網其它相關文章!


學習教程快速掌握從入門到精通的SQL知識。




主站蜘蛛池模板: 日本欧美视频 | 一级黄色在线 | 在线免费h | 天天操2018 | 欧美在线小视频 | 欲色视频| 亚洲精品在线观看视频 | 天天干天天草天天 | 手机国产乱子伦精品视频 | 无人在线观看完整免费版视频 | 午夜亚洲国产成人不卡在线 | 日日摸夜夜夜夜夜添 | 日韩欧美一区二区在线观看 | 亚洲国产一区二区a毛片 | 中文字幕亚洲综合久久男男 | 性视频网 | 亚洲男人的天堂网站 | 香蕉久久夜色精品国产小优 | 天堂网站天堂小说 | 特级欧美老少乱配 | 又粗又大又爽又紧免费视频 | 亚洲男人在线天堂 | 欧美综合区 | 欧美又大又粗又爽又硬 | 亚洲资源最新版在线观看 | 在线免费看污视频 | 色综合狠狠操 | 武则天一级淫片免费 | 一级一级一级毛片免费毛片 | 日本一区二区三区在线看 | 日本特黄特色免费大片 | 在线视频一二三区 | 日本免费高清一区 | 日本青青草 | 午夜大片免费完整在线看 | 天堂影院| 四虎影视在线影院www | 日韩视频网址 | 午夜天堂在线 | 亚洲欧美久久婷婷爱综合一区天堂 | 青草全福视在线 |