您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)ThinkPHP6的中間件有什么用的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
從ThinkPHP6開始,一個叫做“中間件”的名詞出現(xiàn)在了官方手冊中,那么中間件是用來干什么的?又應(yīng)該如何使用呢?下面咱們慢慢分析。
首先看下中間件官網(wǎng)的定義:
中間件主要用于攔截或過濾應(yīng)用的 HTTP 請求,并進(jìn)行必要的業(yè)務(wù)處理。
從字面意思上不難理解,中間件就是在我們請求控制器的方法之前,中間件就可以攔截或者做其他的事情。
我們在www.blog.com中的index控制中的index方法中就寫一行代碼:
echo "index方法";
我們來測試下定義了中間件會有什么事情發(fā)生?
一、中間件的定義
我們下載好ThinkPHP6框架后,在app下有middleware.php,這個文件就是中間件的定義文件,我們注意下它的位置,它沒有放在任何應(yīng)用下面,而是在app下面和BaseController.php是相同目錄的,因此它是一個全局中間件。
定義中間件很簡單,我們有兩個方法:
1、用命令行。php think make:middleware Check。這個使用后的感受就一個字:快!真快!中間件定義瞬間完成。
2、復(fù)制粘貼,我們在app下建立middleware目錄,并且建立一個 Check.php的中間件:
<?php namespace app\middleware; class Check { public function handle($request, \Closure $next) { echo "app中間件"; return $next($request); } }
中間件定義完了,為啥沒生效?
按照上面的中間件定義步驟,中間件定義完成,但是并沒有生效,是什么原因呢?
原因是沒有在配置文件中啟動。如何操作?
打開app\middleware.php,在最小面添加如下代碼:
app\middleware\Check::class
我們再次訪問www.blog.com就會發(fā)現(xiàn),先輸出中間件的內(nèi)容,再輸入控制器的內(nèi)容。
這也就是應(yīng)證了官方對中間件的定義,在執(zhí)行方法前先去執(zhí)行對應(yīng)的中間件。以上就是一個中間件入門的小例子,這個小例子吃透后,也就為中間件其他的內(nèi)容打開了大門。
感謝各位的閱讀!關(guān)于“ThinkPHP6的中間件有什么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。