首頁  >  文章  >  後端開發  >  laravel在中介軟體內產生的變數如何傳到控制器

laravel在中介軟體內產生的變數如何傳到控制器

WBOY
WBOY原創
2016-09-30 09:37:281096瀏覽

在中間件內獲取到一個變量,如何返回到控制器中並使用這個變量!

回覆內容:

在中間件內獲取到一個變量,如何返回到控制器中並使用這個變量!

做了個demo:

<code>// web.php
Route::get('/check', 'CheckController@check')->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
    }
}
</code>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn