亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

說一說ThinkPHP6中五花八門的中間件

發布時間:2021-01-26 11:46:05 來源:億速云 閱讀:247 作者:小新 欄目:編程語言

小編給大家分享一下說一說ThinkPHP6中五花八門的中間件,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在ThinkPHP6中新增中間件功能,而且中間件又分很多類型的中間件,很多新手對ThinkPHP6中間件很犯難,

全局中間件:

我們下載好ThinkPHP6的框架后,在app目錄下就有一個middleware.php,我們在app目錄下定義的中間件叫做全局中間件,全局中間件是對所有應用都生效的中間件。

應用中間件:

那換而言之,如果我們再復制一份middleware.php放在了某個應用下,比如index應用,是不是就叫做應用中間件呢,答案是對的。

控制器中間件:

如果在控制器中操作中間件,是不是就叫做控制器中間件?

路由中間件:

那可不可以在路由中也定義中間件,比如我只想讓某個請求使用某個中間件,其他的并不想使用中間件,那也就有了路由中間件。

如果同一個請求,所有類型的中間件都定義了,那執行順序是如何呢?

全局中間件->應用中間件->路由中間件->控制器中間件

接下來我們看一個實例。

全局中間件:

 public function handle($request, \Closure $next)
    {
        echo 'app全局中間件';
        return $next($request);
    }

應用中間件:

public function handle($request, \Closure $next)
    {
        echo '應用中間件';
        return $next($request);
    }

路由中間件:

Route::rule('hello','index/hello')
->middleware(\app\middleware\Auth::class);

控制器中間件:

在使用控制器中間件之前,我們先定義好別名,在根目錄下config\middleware.php中定義別名。這個別名其實就是增加別名標識。別名定義好后,不僅在控制器中間件可以使用,路由中間件也可以使用。

return [
    'alias' => [
        'auth2' => app\middleware\Auth2::class,
    ],
];

我們在這里定義別名中間件,就不需要在middleware.php中聲明了,而是通過在控制中使用別名定義:

class Index
{
    protected $middleware = ['auth2'];
    public function index()
    {
       return 'index';
    }
    public function hello()
    {
       echo 'hello方法';
    }
}

這個時候我們訪問hello方法,輸出結果是:

app全局中間件

應用中間件

路由中間件

控制器中間件

hello方法

以上是“說一說ThinkPHP6中五花八門的中間件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

玛曲县| 建湖县| 镇赉县| 兰考县| 陕西省| 克东县| 衡南县| 汽车| 安泽县| 马鞍山市| 蛟河市| 靖州| 鲁山县| 永泰县| 泾源县| 阳新县| 七台河市| 宜川县| 博罗县| 厦门市| 会泽县| 大石桥市| 柳州市| 广西| 郯城县| 襄垣县| 汉寿县| 阿坝县| 勃利县| 浦县| 灵璧县| 浮梁县| 东乡| 边坝县| 泾源县| 轮台县| 丰镇市| 玛沁县| 新巴尔虎左旗| 涪陵区| 全椒县|