简单的无极限分类
之前看過一些無極限分類的,這次自己簡單總結一下
數據
第一步,取出來
得到最普通的格式(是無序的)
第二步,進行數組處理(順序啥的無區別,就是數組的鍵從0-5變成了1-6)
第二步,開始遍歷了
這就完成了
附上代碼
//獲取分類public function get_category(){ //從數據庫取出數組$array = self::where(['require' => 1])->select()->toArray();//先第一步對數組進行排序,不能直接第二步$items = array();foreach($array as $value){$items[$value['id']] = $value;}//第二步$tree = array();//定義索引數組,用于記錄節點在目標數組的位置foreach($items as $key => $value){//如果pid這個節點存在if(isset($items[$value['pid']])){//把當前的$value放到pid節點的son中 注意 這里傳遞的是引用$items[$value['pid']]['son'][] = &$items[$key];}else{$tree[] = &$items[$key];}}return $tree;}?
總結
- 上一篇: QQ浏览器性能提升之路-windows性
- 下一篇: 为什么极品飞车服务器维修,极品飞车:无极