laravel Eloquent 判断取出的结果集是否为空
在使用Laravel Eloquent模型时,我们可能要判断取出的结果集是否为空,但我们发现直接使用is_null或empty是无法判段它结果集是否为空的。
var_dump之后我们很容易发现,即使取到的空结果集, Eloquent仍然会返回Illuminate\Database\Eloquent\Collection对象实例。
其实,Eloquent已经给我们封装几个判断方法。
$result = Model::where(...)->get(); //不为空则 if ($result->first()) { } if (!$result->isEmpty()) { } if ($result->count()) { }
isEmpty()
如果集合是空的,isEmpty 方法返回 true,否则返回 false:
collect([])->isEmpty(); // true
isNotEmpty()
如果集合不是空的,isNotEmpty 方法会返回 true:否则返回 false:
collect([])->isNotEmpty(); // false
浙公网安备 33010602011771号