// +---------------------------------------------------------------------- namespace app\model; use think\facade\Cache; use think\Model; use think\Request; /** * @title: 菜单模型 */ class Menu extends Model { /** * @title 显示菜单 */ public function getAuthMenuList(Request $request) { $list = []; $current_controller = '/' . str_replace('.', '/', strtolower($request->controller())); $current_url = $request->url; $menu = Cache::get('menu'); if (!$menu) { $res = self::where('is_menu', 1)->order('sort asc, id asc')->select()->toArray(); foreach ($res as $key => $item) { $menu[$item['id']] = $item; } Cache::set('menu', $menu); } foreach ($menu as $key => $value) { if ($request->isAdmin || in_array($value['id'], array())) { $list[$value['id']] = $value; } } $menuList = list_to_tree($list); return $menuList; } }