ドキュメント
required_if:他のフィールド,値,...
他のフィールドが値のどれかと一致している場合、このフィールドが存在し、かつ空でないことをバリデートします。
string
フィルードは文字列タイプであることをバリデートします。
フィールドがnullであることも許す場合は、そのフィールドにnullableルールも指定してください。
nullable
フィールドがnullでも良いことをバリデートします。
これはとくにnull値を含む文字列や整数のようなプリミティブをバリデートする場合に便利です。
サンプル
use Illuminate\Foundation\Http\FormRequest;
final class XxxRequest extends FormRequest implements XxxRequestInterface
{
/**
* @return array
*/
public function rules(): array
{
// title が hoge の場合のみ、body を必須に、それ以外の場合は NULL を許容
return [
'body' => [
'nullable',
'required_if:title,hoge', //required_if:他のフィールド,値,...
'string',
'max:500',
],
];
}
}
// nullable も指定しておかないと、body が常に必須になってしまう
return [
'body' => [
'required_if:title,hoge',
'string',
'max:500',
],
];