ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp ミドルウェアの用途は何ですか?

thinkphp ミドルウェアの用途は何ですか?

WBOY
WBOYオリジナル
2022-02-24 16:26:513006ブラウズ

thinkphp では、「APP\middleware」ディレクトリに作成されるクラス ファイルがミドルウェアであり、主にアプリケーションの HTTP リクエストをインターセプトまたはフィルタリングし、必要な業務処理を実行するために使用されます。ルーティングミドルウェアとコントローラーミドルウェア。

thinkphp ミドルウェアの用途は何ですか?

この記事の動作環境: Windows 10 システム、ThinkPHP バージョン 5、Dell G3 コンピューター。

thinkphp ミドルウェアの使用方法

1. ミドルウェア ファイル定義

APP\middleware ディレクトリに作成します。 class ファイルはすべてミドルウェアであり、グローバル ミドルウェア、ルーティング ミドルウェア、およびコントローラー ミドルウェアはすべてディレクトリ パスを通じて参照できます。複数のアプリケーションは、独自のアプリケーション ディレクトリに新しいミドルウェア ディレクトリを作成し、以下のクラス ファイルを作成する必要があります。

ミドルウェアは主に、アプリケーションの HTTP リクエストをインターセプトまたはフィルタリングし、必要なビジネス処理を実行するために使用されます。

ミドルウェアの定義: コマンド ライン命令を通じてミドルウェアをすばやく生成できます。

php think make:middleware Check

この命令は、application/http/middleware ディレクトリの下に Check ミドルウェアを生成します。

2. ミドルウェア ファイルの参照または使用

ミドルウェア ファイルを 1 ステップで作成した後

# (1 )

をグローバルミドルウェアとして使用します。APP ディレクトリの middleware.php ファイルに、\app\middleware\chushimima::class などの 1 のパスとファイルを追加します。これは次のようになります。グローバルミドルウェアを使用します。世界中で機能します。

middleware.phpに登録されていないミドルウェアはグローバルミドルウェアではなく、定義方法の違いによりルーティングミドルウェアとコントローラミドルウェアに分けられます。

(2) ルーティングミドルウェアとして利用する

同じミドルウェアクラスファイル\app\middleware\chushimima、APPディレクトリ下のrouteディレクトリにルートを記述します。定義ファイルに、

Route::rule('index/denglu','index/denglu');
->middleware('\app\middleware\chushimima');

などのルーティング ルールを追加します。これは、このルートにアクセスする場合にのみ機能するルーティング ミドルウェアです。

(3) コントローラのミドルウェアとして使用する

同じミドルウェア クラス ファイル \app\middleware\chushimima に、コントローラ ファイルのコードに次のコードを追加します。 ##

class Index extends baseController
{ protected $middleware='\app\middleware\chushimima';

推奨学習: 「

PHP ビデオ チュートリアル

以上がthinkphp ミドルウェアの用途は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。