thinkPHP6 中間件傳參


可以通過給請求對象賦值的方式傳參給控制器(或者其它地方),例如

中間件傳參 : 前置中間件

傳:

 1 <?php
 2 
 3 namespace app\http\middleware;
 4 
 5 class Hello
 6 {
 7     public function handle($request, \Closure $next)
 8     {
 9         $request->hello = 'ThinkPHP';
10         
11         return $next($request);
12     }
13 }

后置中間件:

 1 <?php
 2 declare (strict_types = 1);
 3 
 4 namespace app\index\middleware; 6 use think\facade\Session;
 7 class Show
 8 {
 9     public function handle($request, \Closure $next)
10     {
11         $request->rows = $rows;
12 
13         $response = $next($request);
14 
15         $url = request()->controller().'/'.request()->action();
16         if (!Session::has('member_name')){
17             $currenturl = ['Product/product'];
18             if (in_array($url,$currenturl)){
19                 return redirect((string)url('Login/login'));
20             }
21         }
22         return $response;
23     }
24 }

 

接:

1 public function index(Request $request)
2 { 3 return $request->hello; // ThinkPHP 4 } 5 ---------------------------------------------------------------------------- 6 public function index() 7 { 8  return request()->hello; // ThinkPHP 9 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM