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 关联模型-关联新增和关联更新的方法)
- laravel命令控制器怎么设置(Laravel获取当前请求的控制器和方法以及中间件的例子)
- laravel常用的辅助函数介绍(Laravel框架表单验证操作实例分析)
- laravel视图组件(Laravel5.4框架中视图共享数据的方法详解)
- laravel的验证规则(解决在Laravel 中处理OPTIONS请求的问题)
- laravel定时脚本(laravel实现按时间日期进行分组统计方法示例)
- laravel事务状态(laravel dingo API返回自定义错误信息的实例)
- 怎么删掉laravel(laravel-admin的图片删除实例)
- laravel新增数据表(laravel 多图上传及图片的存储例子)
- laravel 数据库迁移(Laravel数据库读写分离配置的方法)
- laravel-admin代码执行流程(解决laravel-admin 自己新建页面里 js 需要刷新一次的问题)
- laravel 数据表格(Laravel自定义 封装便捷返回Json数据格式的引用方法)
- laravel 用户登录认证(Laravel5.5 实现后台管理登录的方法自定义用户表登录)
- laravel后台登录教程(Laravel 默认邮箱登录改成用户名登录的实现方法)
- laravel自定义数据库驱动(laravel框架数据库配置及操作数据库示例)
- laravel队列使用场景(Laravel使用RabbitMQ的方法示例)
- 七夕取消是什么梗(七夕取消是什么梗)
- 这竟然是捏出来的 20种橡皮泥玩法让你轻松hold住魔娃(这竟然是捏出来的)
- 自制橡皮泥(自制橡皮泥)
- 还在卖 禁药西布曲明网上论斤卖(还在卖禁药西布曲明网上论斤卖)
- 微商在朋友圈热卖的 DL减肥咖啡 含违禁药物,你还敢买吗(微商在朋友圈热卖的)
- 八一节,说说中国女兵(八一节说说中国女兵)
热门推荐
- laravel框架网站搭建教程(Laravel框架实现文件上传的方法分析)
- mysql中提取日期的函数是什么(MySQL获得当前日期时间函数示例详解)
- laravel新增数据表(laravel 多图上传及图片的存储例子)
- 静态web服务器nginx(WEB服务器该选择 Apache 还是 Nginx?)
- tomcat运行警告(tomcat异常解决Invalid character found in the request target. The valid characters are defined in)
- SQL SERVER中调用存储过程
- js setTimeout
- python实现linux服务(Python实现Linux监控的方法)
- linux切换python版本(linux安装python修改默认python版本方法)
- MySQL中TIMESTAMP和DATETIME
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9