怎么判断 laravel的model 的数据库为空?

php$p = Project::where('user_id', '=', $userid)->get();

print_r($p);         //有3条数据

empty($p);           //return ture

为什么print_r能看到数据,可以empty却返回true呢?

阅读 7.1k
3 个回答

1.
find --> 返回 object or empty
ex:

$p = Project::find($id);
if(empty($p)) {
  dd('project is empty');
}

get --> 返回object , 透过count 方法判断
ex:

$p = Project::where('user_id', '=', $userid)->get();
if($p->count() == 0) {
  dd('project is empty');
}

php.net/iterator_to_array