中间件
一下是我做的一个tp5框架中的一个例子仅做参考,也可以参考https://www.kancloud.cn/manual/thinkphp5_1/564279手册。
首先创建目录:
class System
{
public function handle($request, \Closure $next)
{ $systems=SystemModel::cache('system')->select()->toArray(); //从数据库中查询出系统配置星系,并缓存可以减小数据库的的负担
$systemConfig=[]; //定义一个数组
foreach($systems as $k=>$v){ //循环查出来的数据
$systemConfig[$v['system_key']]=$v['system_value']; //赋值
}
/*View::share($systemConfig);*/
\think\facade\Cache::set('systemConfig',$systemConfig);//调用门面里的方法
\think\facade\View::share($systemConfig); //分配到试图中
return $next($request); //相当与把请求传入接下来的逻辑中,同时,中间件也可以返回重定向,不运行之前的逻辑。
}
}
在application目录下面建立一个全局的中间件
因为是利用缓存所以在增加更新之后都要删除一下缓存
\think\facade\Cache::rm('system');
数据库表