[TOC]
- 简介
- 初始化接口后端示例(V2版)
- 使用说明(V2版)
- 使用说明(V1版)
- 本书使用 GitBook 发布
PHP示例(Laravel)
Laravel框架示例(6.2版本)
为了方便演示,直接用DB类去写
App/Http/Controllers/IndexController.php
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\DB;
class IndexController extends Controller{
// 获取初始化数据
public function getSystemInit(){
$homeInfo = [
'title' => '首页',
'href' => 'page/welcome-1.html?t=1',
];
$logoInfo = [
'title' => 'LAYUI MINI',
'image' => 'images/logo.png',
];
$menuInfo = $this->getMenuList();
$systemInit = [
'homeInfo' => $homeInfo,
'logoInfo' => $logoInfo,
'menuInfo' => $menuInfo,
];
return response()->json($systemInit);
}
// 获取菜单列表
private function getMenuList(){
$menuList = DB::table('system_menu')
->select(['id','pid','title','icon','href','target'])
->where('status', 1)
->orderBy('sort', 'desc')
->get();
$menuList = $this->buildMenuChild(0, $menuList);
return $menuList;
}
//递归获取子菜单
private function buildMenuChild($pid, $menuList){
$treeList = [];
foreach ($menuList as $v) {
if ($pid == $v->pid) {
$node = (array)$v;
$child = $this->buildMenuChild($v->id, $menuList);
if (!empty($child)) {
$node['child'] = $child;
}
// todo 后续此处加上用户的权限判断
$treeList[] = $node;
}
}
return $treeList;
}
}
© zhongshaofa all right reserved,powered by Gitbook文件修订时间: 2021-04-06 22:10:57