基本の部分(Laravel)

ミドルウェアの使い方について

ミドルウェアは、リクエストを受け取るとコントローラ処理の前後に割り込み、独自の処理を追加する仕組みです。

ミドルウェアとは

MVCアーキテクチャとは、モデル・ビュー・コントローラがそれぞれ切り離されています。プログラムの基本部分はコントローラですが、コントローラはそれぞれのアクションごとに処理を用意しております。

Laravelはコントローラとは別で「指定のアドレスにリクエストが送られたら、自動的に何らの処理を行う」という仕組みを用意しました。それがミドルウェアです。

ミドルウェアはリクエストがアクションに届く前や後に割り込んで処理を実行します。

ミドルウェアを作成する

実際にミドルウェアを作成してみましょう。ミドルウェアはスクリプトファイルを手作業で作成すれば、作れますがもっと簡単に作成したい場合は、artisanコマンドを使用しましょう。

サンプルとして「LaravelMiddleware」という名前で作榮してきましょう。

LaravelMiddleware.phpを確認する

ミドルウェアは「Http」の中の「Middleware」の中に作成されます。このフォルダに既にいくつかフォルダが入っていますが、標準で入っているものですので、気にしないでください。

では、「Middleware.php」を開いてください。以下のスクリプトが記述されています。

作成されたLaravelMiddkewareは特になにかのクラスを継承しているわけではないですし、シンプルなクラスです。

では次にLaravelMiddlewareの修正をしていきます。

これでLaravelMiddlewareが登録され、利用可能になります。

ミドルウェアの実行

作成されたミドルウェアはまだ利用することができません。これを使用するには「利用するミドルウェアを呼び出す処理」が必要になってきます。

web.phpを開き、ルート情報にミドルウェアの呼び出し処理を追記してみてください。

では、追記できましたら、次はビューとコントローラの修正です。

ビューとコントローラの修正

まずはコントローラの修正です。

該当コントローラに下記の記述をしてください。

コントローラは下記で説明しているので、こちらも確認してみてください。

https://laravel-times.com/index.php/2021/04/29/controller/

続いてテンプレート側の修正を行いたいと思います。index.blade.phpに記述してある@section(‘content’)のディレクティブを修正しましょう。

ミドルウェアに追加されたデータが表示されるようになるかと思います。

実際に/laravelにアクセスして表示確認を行ってみてください。

これからLaravelを始めるならこれが最適!!


今までLaravelに関しての良書はほとんどなく、あっても内容が古かったり分かりにくいのばかりで、先駆者達は苦労したのではないでしょうか?

そんな中で発売されたこの本は、現在の日本国内にて唯一のLaravelの良書と言い切っても良いかと思います。PHP中級者以上なら苦労することなく読めるでしょう。Laravelは高機能ゆえ、全機能を説明してはいませんが、この本をとっかかりにすれば自ずとLaravelをマスターすることができると思います。