laravel如何设置默认模块(Laravel框架控制器的middleware中间件用法分析)
类别:编程学习 浏览量:2556
时间:2021-10-16 00:07:19 laravel如何设置默认模块
Laravel框架控制器的middleware中间件用法分析本文实例讲述了Laravel框架控制器的middleware中间件用法。分享给大家供大家参考,具体如下:
场景:活动开始前只能访问宣传页面,开始后才可以访问其他页面:
步骤:
新建中间件,
注册中间件,
使用中间件,
中间件的前置和后置操作。
控制器:
|
public function activity0(){ return '活动快要开始啦,敬请期待' ; } public function activity1(){ return '活动页面1' ; } public function activity2(){ return '活动页面2' ; } |
路由:
|
Route::any( 'activity0' ,[ 'uses' => 'StudentController@activity0' ]); Route::any( 'activity1' ,[ 'uses' => 'StudentController@activity1' ]); Route::any( 'activity2' ,[ 'uses' => 'StudentController@activity2' ]); |
在App\Http\Middleware下创建中间件Activity.php:
|
namespace App\Http\Middleware; use Closure; class Activity{ public function handle( $request ,Closure $next ){ if (time() < strtotime ( '2018-01-01' )){ return redirect( 'activity0' ); } return $next ( $request ); } } //注册中间件,在Kernel.php中的$routeMiddleware数组中增加 protected $routeMiddleware = [ 'activity' => \App\Http\Middleware\Activity:: class , ]; |
使用中间件,路由中的设置
|
//宣传页面不需要中间件验证,不能放里边 Route::any( 'activity0' ,[ 'uses' => 'StudentController@activity0' ]); Route::group([ 'middleware' =>[ 'activity' ]], function (){ Route::any( 'activity1' ,[ 'uses' => 'StudentController@activity1' ]); Route::any( 'activity2' ,[ 'uses' => 'StudentController@activity2' ]); }); |
|
//后置中间件 public function handle( $request ,Closure $next ){ $response = $next ( $request ); echo $response ; echo '我是后置操作' ; } |
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/gyfluck/p/9041407.html
您可能感兴趣
- laravel授权使用方法(Laravel 自带的Auth验证登录方法)
- laravel请求耗时(Laravel统计一段时间间隔的数据方法)
- laravel检查关联模型(Laravel 关联模型-关联新增和关联更新的方法)
- laravel5.7项目实战(基于Laravel 5.2 regex验证的正确写法)
- laravel定时脚本(laravel实现按时间日期进行分组统计方法示例)
- laravel 表单验证图片(Laravel 自动生成验证的实例讲解:login / logout)
- laravel数据转换层(laravel通过a标签从视图向控制器实现传值)
- laravel数据库关联查找(laravel 操作数据库常用函数的返回值方法)
- laravel判断变量为空(关于laravel 数据库迁移中integer类型是无法指定长度的问题)
- laravel命令控制器怎么设置(Laravel获取当前请求的控制器和方法以及中间件的例子)
- laravel框架如何查询空的信息(Laravel 已登陆用户再次查看登陆页面的自动跳转设置方法)
- laravel框架知识点(Laravel 不同生产环境服务器的判断实践)
- laravel数据库操作方式(Laravel 实现数据软删除功能)
- laravel框架的高级知识点(laravel配置Redis多个库的实现方法)
- laravel获取数据(laravel框架添加数据,显示数据,返回成功值的方法)
- laraveljob怎么运行脚本(Laravel-admin之修改操作日志的方法)
- 二次创业 的富士胶片,在进博会上首次展示完成转型后的全线医疗产品(二次创业的富士胶片)
- 富士胶片 中国 我们对上海的信心没有任何改变(富士胶片中国)
- 赢麻了 富士公布2021年度财报 营利同比增长240(富士公布2021年度财报)
- 医事文化谈屑 | 古人的名 字 号(医事文化谈屑古人的名)
- ()
- 网友很惭愧,自己写了很多年的字,到头来还不如一名小学生写的好(自己写了很多年的字)
热门推荐
- sqlserver索引策略(SQLServer性能优化--间接实现函数索引或者Hash索引)
- php一直提示错误(关于php开启错误提示的总结)
- sql语句left+join详解(SQL语句中JOIN的用法场景分析)
- 云服务器的使用技术(云服务器运行如何实现的原理)
- nginxhttp转https原理(nginx如何将http访问的网站改成https访问)
- php列表怎么用(PHP开启目录引索+fancyindex漂亮目录浏览带搜索功能)
- python二叉树是怎么来的(Python二叉树的镜像转换实现方法示例)
- 宝塔ftp服务器怎么设置(宝塔面板创建的ftp登陆无法连接的解决方案)
- 基于python的加密算法(python实现维吉尼亚加密法)
- vue如何检查数组变化(Vue2中无法检测到数组变动的原因及解决)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9