91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP中如何實現無限級分類

發布時間:2021-08-23 10:52:19 來源:億速云 閱讀:168 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關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中如何實現無限級分類”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

互助| 锦屏县| 阳原县| 白水县| 华阴市| 凭祥市| 济南市| 金门县| 花莲县| 南郑县| 苏尼特左旗| 楚雄市| 新邵县| 临泉县| 古蔺县| 南京市| 南岸区| 建宁县| 隆回县| 新兴县| 南木林县| 张家港市| 平南县| 大邑县| 西宁市| 高雄市| 和顺县| 平谷区| 北辰区| 桓仁| 龙陵县| 徐闻县| 邛崃市| 方城县| 濉溪县| 长治市| 宝鸡市| 象山县| 莫力| 新宁县| 区。|