【Laravel】リクエストパラメータの存在チェックができるhasメソッドを解説します

こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。

この記事では、 PHPのフレームワークの1つであるLaravelでリクエストパラメータの存在チェックができるhasメソッドをサンプルプログラムを交えて解説していきます。

前提条件:実行環境について

実行環境は以下の通りです。

OS Windows10
PHPのバージョン 8.0.3
Laravelのバージョン 8.42.1

この記事では

C:\Laravel\LaravelSample

配下にLaravelのプロジェクトを作成しています。

hasメソッドとは

hasメソッドについて解説します。

hasメソッドは引数に指定したパラメータがリクエストに存在するか判定し、結果をboolで返すメソッドです。
返り値は以下になります。

リクエストにパラメータが存在する trueを返す
リクエストにパラメータが存在しない falseを返す

hasメソッドを使うには

を宣言することが必要です。

以下のように使います。

上記のサンプルでは$requestに「test」が存在していればtrue、存在しなければfalseを返します。

では、次の章で実際に使ってみます。

リクエストでパラメータの存在チェックができるhasメソッドを解説するプログラムの概要

リクエストでパラメータの存在チェックができるhasメソッドを解説するプログラムは、

  • コントローラー
  • Bladeビュー
  • web.php

3つを使います。

コントローラーは名前を【SampleController.php】とし、Requestから指定のパラメータがあるか確認し結果を、出力用のBladeビューに渡します。
コントローラーからBladeビューに値を渡して表示する方法は以下の記事をご参考ください。

Bladeビューは、コントローラーから渡されたパラメータを出力させます。
ファイル名は【show_sample.blade.php】でviewsディレクトリ直下に格納します。

web.phpには、【http://〇〇.〇〇.〇〇:8000/sample_param】でアクセスした場合、SampleControllerの【show_sample.blade.php】を呼ぶメソッドを呼ぶように定義します。
ちなみにweb.phpとは、ルーティングを定義することができるファイルです。
詳しくはこちらの記事をご参考ください。

コントローラー:SampleController.phpのサンプルプログラム

Bladeビュー:show_sample.blade.phpのサンプルプログラム

web.phpのサンプルプログラム

実行して確認

本当にリクエストのパラメータの存在チェックができているのかを実行して確認します。
Laravelでサーバーを立ち上げるコマンドは

です。
サーバーを立ち上げるコマンドの詳細な説明は、こちらの記事をご参考ください。

「meat」にのみパラメータを指定します。

  • http://〇〇〇.〇〇〇.〇〇〇.〇〇〇:8000/sample_param?meat=chicken
    ※コマンドプロンプトに記載されているURL
  • http://localhost:8000/show?sample_param?meat=chicken

どちらかのURLにアクセスすれば、リクエストパラメータの存在チェックができていることが確認できます。

まとめ:リクエストパラメータの存在チェックをしたいときはhasメソッドを使ってみよう

以上がLaravelでリクエストパラメータの存在チェックができるhasメソッドの解説でした!

あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ

コメント

タイトルとURLをコピーしました