ID 以外の条件に基づいてフィールドを選択する必要があることがよくあります。
だから、$user = User::where('last_login', $lastLogin)->where('last_warning', $lastWarning)->get();
完璧に動作します。
それは、null を許可する場所の 1 つを設定するまでです (やりましょうlast_login
)。
つまり、値を持つことも、null になることもできます。
つまり、2 つの関数のwhere()
いずれかを使用する必要があることを意味whereNull()
し、そのためにはチェーンを壊す必要があるため、次のようになります。
$user = User::where('last_warning', $lastWarning);
is_null($lastLogin) ? $user->whereNull('last_login') : $user->where('last_login', $lastLogin);
$user = $user->get();
where
これに対処する方法があるかどうか疑問に思っていますか?現在のように、うまくいかないnull
ところまで通り抜けると!where column = null