Laravel 5 检查结果的最佳方法是在Laravel中接收
我正在寻找最好的方法来检查是否有从LaravelSQL查询收到的任何结果。如果我只使用$ads->isEmpty,如果查询的执行条件不满足,则当查询尚未执行时会出现问题 若我只使用空的$ads,那个么当查询已经执行但并没有结果时就会出现问题——它仍然给出空值,所以它不再是空的 也许有一张更好的支票,而不是这两张Laravel 5 检查结果的最佳方法是在Laravel中接收,laravel-5,Laravel 5,我正在寻找最好的方法来检查是否有从LaravelSQL查询收到的任何结果。如果我只使用$ads->isEmpty,如果查询的执行条件不满足,则当查询尚未执行时会出现问题 若我只使用空的$ads,那个么当查询已经执行但并没有结果时就会出现问题——它仍然给出空值,所以它不再是空的 也许有一张更好的支票,而不是这两张 if (Session::has('city')) { $ads = \App\Ad::orderBy('id', 'desc')->get(); } if (empty
if (Session::has('city')) {
$ads = \App\Ad::orderBy('id', 'desc')->get();
}
if (empty($ads) or $ads->isEmpty()) {
// do something
}
您可以选择始终确保$ads是一个集合
例如
更多关于
会话助手-
收集助手-
什么意思?在上面的代码中,$ads将始终是一个Laravel集合,无论是否包含项目。在我的问题中,$ads处于附加条件下,如果该条件不满足,$ads将为null…if Session::具有'city'?这仍然存在于我的代码中,但使用了三元运算符。是的。哦,现在我明白了。如果只有一种方法可以做到这一点,那么对我来说,增加额外的条件看起来更清楚,作为一个在拉雷维尔的新手:可能有很多方法可以达到你的要求。这是一种选择。A,与拉威尔无关。你可以阅读更多关于和。
$ads = session()->has('city')
? \App\Ad::orderBy('id', 'desc')->get()
: collect();
if ($ads->isEmpty()) {
// ...
}