www.gusucode.com > KPPW众包威客PHP开源建站系统 v3.0源码程序 > KPPW/app/Modules/Manage/Model/ArticleCategoryModel.php
<?php namespace App\Modules\Manage\Model; use Illuminate\Database\Eloquent\Model; class ArticleCategoryModel extends Model { protected $table = 'article_category'; protected $primaryKey = 'id'; protected $fillable = [ 'id','pid','cate_name','articles','display_order','created_at','updated_at' ]; public $timestamps = false; static function createCategory(array $data) { $now = date('Y-m-d H;i:s',time()); $articleArr = array( 'pid' => $data['upID'], 'cate_name' => $data['catName'], 'display_order' => $data['displayOrder'], 'created_at' => $now, 'updated_at' => $now ); $res = ArticleCategoryModel::insert($articleArr); return $res; } static function getTree() { $data = ArticleCategoryModel::get()->toArray(); return self::_reSort($data); } static function _reSort($data,$upID = 0,$level=0,$isClear=TRUE) { static $ret = array(); if($isClear) { $ret = array(); } foreach($data as $k=>$v) { if($v['pid'] == $upID) { $v['level'] = $level; $ret[] = $v; self::_reSort($data,$v['id'],$level+1,FALSE); } } return $ret; } static function _children($data,$upID=0,$isClear=TRUE) { static $ret = array(); if($isClear) { $ret = array(); } foreach ($data as $k=>$v) { if($v['pid'] == $upID) { $ret[] = $v['id']; self::_children($data,$v['id'],FALSE); } } return $ret; } static function getParentId($id,$isClear=true) { static $pid = ''; if($isClear) { $pid = ''; } $parentCate = ArticleCategoryModel::where('id',$id)->first(); if($parentCate->pid != 0){ self::getParentId($parentCate->pid,false); }else{ $pid = $parentCate->id; } return $pid; } }