laravel在中间件内生成参数并且传递到控制器中的2种姿势(laravel在中间件内生成参数并且传递到控制器中的2种姿势)
类别:编程学习 浏览量:584
时间:2021-10-02 01:02:14 laravel在中间件内生成参数并且传递到控制器中的2种姿势
laravel在中间件内生成参数并且传递到控制器中的2种姿势姿势1
使用$request->attributes->add($arr)方法
Demo:
注册中间件这部分就不说了 主要说用法
- class MidParams //中间件
- {
- public function handle($request, Closure $next)
- {
- $mid_params = ['mid_params'=>'this is mid_params'];
- $request->attributes->add($mid_params);//添加参数
- return $next($request);//进行下一步(即传递给控制器)
- }
- }
- class MidController extends Controller { //控制器
- public function testMidFunc(Request $request) {
- $input_params = $request->input();//获取参数
- $mid_params = $request->get('mid_params');//中间件产生的参数
- return ['my_params'=>$input_params,
- 'mid_params'=>$mid_params];
- //注意:$request->attributes->add这种方法 input()取不到值 只能用get('xxx')取到值
- }
- }
下面来看结果:
my_params是传的参,mid_params是中间件生成的参
姿势2
使用$request->merge($arr)方法
Demo:
- class MidParams //中间件
- {
- public function handle($request, Closure $next)
- {
- $mid_params = ['mid_params'=>'this is mid_params'];
- $request->merge($mid_params);//合并参数
- return $next($request);
- }
- }
- class MidController extends Controller { //控制器
- public function testMidFunc(Request $request) {
- $all_params = $request->input();//获取参数
- return ['all_params'=>$all_params];
- }
- }
结果:
merge后$request->input()能获取到所有的参数
以上这篇laravel在中间件内生成参数并且传递到控制器中的2种姿势就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
原文链接:https://blog.csdn.net/chWow/article/details/77921076
您可能感兴趣
- laravel框架怎么定时任务(laravel Model 执行事务的实现)
- laravel队列不超时(在laravel中实现事务回滚的方法)
- laravel数据库切换(实现laravel 插入操作日志到数据库的方法)
- laravel前后端分离实现排序(laravel自定义分页的实现案例offset和limit)
- laravel使用教程(基于Laravel5.4版本的基本增删改查操作方法)
- laravel查询限制输出设置(laravel 获取某个查询的查询SQL语句方法)
- phplaravel一般开发什么项目(laravel 去掉index.php伪静态的操作方法)
- laravel关联模型字段冲突(浅谈laravel中的关联查询with的问题)
- laravel数据查询(laravel按天、按小时,查询数据的实例)
- laravel开发api实例(Laravel框架集成UEditor编辑器的方法图文与实例详解)
- 简单laravel框架教程交流(使用composer 安装 laravel框架的方法图文详解)
- laravel框架保存数据(Laravel 数据库加密及数据库表前缀配置方法)
- laravel 后台管理框架(laravel-admin 管理平台获取当前登陆用户信息的例子)
- laravel 队列导入数据(laravel框架查询数据集转为数组的两种方法)
- laravel命令大全详解(Laravel框架中缓存的使用方法分析)
- laravel高级用法(Laravel5.1框架注册中间件的三种场景详解)
- 追连续剧,品古今联4 明代三杨,联妙诗佳(追连续剧品古今联4)
- 三杨 共辅四朝帝王,构建明帝国内阁行政圈(三杨共辅四朝帝王)
- 红色文化进国企(红色文化进国企)
- 车友的选择| 轮毂该如何选(车友的选择轮毂该如何选)
- 秦海璐炫耀和王新军热恋蜜事,不料对方吐槽她吃饱后肚子撅老高(秦海璐炫耀和王新军热恋蜜事)
- 秦海璐一袭旗袍惹人倾心,将高级与淡雅展现的游刃有余(秦海璐一袭旗袍惹人倾心)
热门推荐
- 阿里云无法远程连接服务器(解决阿里云ssh远程连接短时间就会断掉的问题)
- dedecms添加底部链接(详解如何修改织梦模板dedeCMS友情链接为下拉式)
- 织梦调用栏目内容(织梦标签channel实现列表页调用当前栏目的子类)
- 腾讯云轻量应用服务器与VPS服务器、虚拟主机有什么区别?(腾讯云轻量应用服务器与VPS服务器、虚拟主机有什么区别?)
- 阿里云ecs 更换操作系统(为什么禁用阿里云ECS的内网后不能使用云监控?)
- 聊天室python小程序(用Python写一个模拟qq聊天小程序的代码实例)
- laravel增删改查接口(laravel-admin 实现给grid的列添加行数序号的方法)
- dedecms统计功能(DedeCMS sql 调用数字递增标签以及修改方法)
- parseInt()和parseFloat()
- node.js express 上线(node+express实现分页效果)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9