🚒
Laravel Requestクラスから型を指定してデータを取得する
はじめに
Requestクラスから値を取得し、何かのメソッドの引数に指定した時に
declare(strict_types=1);
の指定が入っていると型が一致しないで怒られるので
毎回キャストを入れるのが面倒になっている今日この頃
何かないかとlaravel/frameworkのPull Requestを見ていたら1つ発見があったのでメモを残しておきます。
発見したPull Request
こちらです。
int
やfloat
にキャストした値を取得するメソッドを追加しますって内容です。
これが
intval($request->input('some_int_value'));
(int) $request->input('some_int_value');
floatval($request->input('some_float_value'));
(float) $request->input('some_float_value');
こうなります。
$request->integer('some_int_value');
$request->float('some_float_value');
地味ですが、毎回キャストを書くよりはメソッドで指定できる方が個人的には嬉しいです。
この内容はLaravel9.32で入っていたようです。
また、すでにboolean
、日付なども取得可能だったようですね。(知らなかった。)
まとめ
困った時はGitHubのIssuesやPull Requestを見た方がいいですね。
何かしらの解決策が書かれていたりします。
また、公式ドキュメントも新たな発見があったりと見返すのは大事だなって思いました。
Discussion