hasメソッド
if ($request->has('name')) {
//
}
if ($request->has(['name', 'email'])) {
//
}
if ($request->filled('name')) {
//
}
Illuminate\Http\Requestクラスのhasメソッドは、リクエストに値が存在する場合に、trueを返します。
配列を指定した場合、hasメソッドは指定値がすべて存在するかを判定します。
値がリクエストに存在しており、かつ空でないことを判定したい場合は、filledメソッドを使います。
@if(Request::has('confirm'))
@endif
bladeの中で使うならこんな感じ
flashメソッド
$request->flash();
$request->flashOnly(['username', 'email']);
$request->flashExcept('password');
入力をフラッシュデータとして保存します。
Illuminate\Http\Requestクラスのflashメソッドは、現在の入力をセッションへ、アプリケーションに要求される次のユーザーリクエストの処理中だけ利用できるフラッシュデータとして保存します。
セッションへ入力の一部をフラッシュデータとして保存するには、flashOnlyとflashExceptが使用できます。両メソッドは、パスワードなどの機密情報をセッションに含めないために便利です。
oldメソッド
$username = $request->old('username');
<input type="text" name="username" value="{{ old('username') }}">
直前のリクエストのフラッシュデータを取得するには、Requestインスタンスに対しoldメソッドを使用してください。oldメソッドはセッションにフラッシュデータとして保存されている入力を取り出すために役に立ちます。
Laravelではoldグローバルヘルパ関数も用意しています。特にBladeテンプレートで直前の入力値を表示したい場合に、oldヘルパは便利です。指定した文字列の入力が存在していないときは、nullを返します。