laravel在中间件内生成的变量如何传到控制器

在中间件内获取到一个变量,如何返回到控制器中并使用这个变量!

做了个demo:

// web.php
Route::get(‘/check‘, ‘[email protected]‘)->middleware(App\Http\Middleware\CheckRequest::class);

// Middleware/CheckRequest.php
class CheckRequest
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        $check_request = ‘CheckRequest‘;
        $request->attributes->add(compact(‘check_request‘));
        return $next($request);
    }
}

// CheckController.php
//use Request;
use Illuminate\Http\Request;
class CheckController extends Controller
{
    public function check(Request $request)
    {
        return $request->get(‘check_request‘); // 输出CheckRequest
    }

    public function check2()
    {
        return Request::get(‘check_request‘); // 输出CheckRequest
    }
}

原文地址:https://www.cnblogs.com/grimm/p/8547488.html

时间: 2024-07-31 12:48:48

laravel在中间件内生成的变量如何传到控制器的相关文章

Laravel Middleware 中间件笔记

Laravel的中间件可以方便的过滤进入我们网页的请求.包括用户授权,CORS来指定流出请求的header等. 定义一个新的中间件可以使用命令: php artisan make:middleware AgeMiddleware 这条命令在app/Http/Middleware中创建AgeMiddleware类. 我们假设我们过滤所有年龄小于200的请求: <?php namespace App\Http\Middleware; use Closure; class AgeMiddleware

在成员函数内定义static变量

成员函数内的局部变量可以是static的.如果将成员函数内的某个局部变量定义为静态变量,该类的所有对象在调用这个成员函数时将共享这个变量. 例3-40   本例在成员函数m中定义了一个static变量s,由于s定义在程序块内,它拥有程序块范围,因此它只能在m内部访问.每调用m一次,s就会相应地增加一次.又因为m是C的成员函数,所以,C的所有对象都共享这个静态局部变量.这样,对m的每一次调用访问的都是同一个s.相反,对于非静态局部变量x来说,每个C对象都拥有一个x.所以,在main中第一次调用c1

Laravel 使用中间件进行权限控制

Laravel 使用中间件进行权限控制 飞凡的陀螺 关注 2018.01.24 17:45 字数 264 阅读 1138评论 0喜欢 1 先看 文档Laravel 中间件提供了一种方便的机制来过滤进入应用的 HTTP 请求.这里实现一个只有admin角色才能访问特定路由的功能 新建middlewarephp artisan make:middleware MustBeAdmin 打开生成的 \app\Http\Middleware\MustBeAdmin.php 修改handle方法关于hasR

指定范围内生成随机数

随机数生成20~70之间的数值: public class Random { public static void main(String[] args) { java.util.Random r = new java.util.Random(); for (int i = 0; i < 10; i++) { System.out.print(" " + (r.nextInt(70) + 20)); } } } 运行结果如下图: 指定范围内生成随机数,布布扣,bubuko.com

重构改善既有代码设计--重构手法02:Inline Method (内联函数)&amp; 03: Inline Temp(内联临时变量)

Inline Method (内联函数) 一个函数调用的本体与名称同样清楚易懂.在函数调用点插入函数体,然后移除该函数. int GetRating() { return MoreThanfiveLateDeliverise() ? 2 : 1; } bool MoreThanfiveLateDeliverise() { return _numberOfLateLiveries > 5; } int GetRating() { return _numberOfLateLiveries > 5

[Perl] 内置特殊变量

一.正则表达式特殊变量:1.$n  :包含上次模式匹配的第n个子串2.$& :前一次成功模式匹配的字符串3.$`  :前次匹配成功的子串之前的内容4.$' :前次匹配成功的子串之后的内容5.$+ :前一次使用括号的模式匹配的字符串. 二.文件句柄特殊变量:1.$| :如果设置为零,在每次调用函数write或print后,自动调用函数fflush,将所写内容写回文件2.$% :当前输出页号3.$= :当前每页长度4.$- :当前页剩余的行数5.$~ :当前报表输出格式的名称.默认值是文件句柄名.6

[三卷天书]记一个asp.net生成两个日期范围内生成随机时间的方法

想网上找个生成随机天数的方法找不到,后面只得自己写了,贴给大家方便使用 思路:算两个日期的相差天数,然后在0到相差天数的范围内生成随机数,再用结束时间的天数部分减去这个随机数,代码: /// <summary> /// (在两个时间范围内)生成随机日期 /// </summary> /// <param name="startime">开始时间</param> /// <param name="endtime"&

第2章 重新组织函数(2):内联函数和内联临时变量

2. 内联函数(Inline Method) 2.1 动机 (1)在函数调用点插入函数本体,然后移除该函数. (2)有时遇到某些函数,其内部代码和函数名称同样清晰易读,采用内联函数可以提供代码的执行速度(因为少掉了函数调用的开销) (3)在Replace Method withd Method Object之前,将一些组织不合理的函数内联到一个大型函数,再从中提炼组织合理的小型函数时效果很好. (4)使用太多的间接层时,特别是一部分函数只是对另一个函数的简单委托时,可同去掉一些无用的间接层. 2

重构笔记——内联临时变量

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/42167015         在上一篇文章中介绍了" 内联函数".本文将介绍"内联临时变量"这种重构手法.         下面让我们一起来学习该重构手法把.(PS:虽然某些重构手法看起很简单,但是和其它重构手法结合起来使用,会产生异曲同工的效果) 开门见山         发现:你有一个临时变量,只被一个简单表达式赋