はじめに: LaravelのQuerybuilderのfirst()がどんな動きをしているか確認
書きの記事を参考にしてLaravelのQuerybuilderのfirst()がどんな動きをしているか確認します。
QueryBuilderのfirst()の動きを調べてみた
結果が無い場合の返り値
結果が無かったら
5.1ではnull
5.3から collect([])が返ってくるようです
バージョンによって少し異なるようですがLaraevl6.4でlogger()で吐かせたところ
Objectの{}
が返却されていました。
isEmpty()とかempty()で判定したい
colectionでもarrayでも無いのでできません。
さえ、どうしましょう。。。
if (!$res->count()) {
// coentが0の場合の処理
}
今回はこんな感じにしました。
時間が無いので検証などできませんでしたが、今度時間がある時にもう少し理解を深めたいと思います。