【发布时间】:2015-03-18 21:32:41
【问题描述】:
我有一个 Laravel Fluent 查询,如下所示:
$query = DB::connection('mysql_users')->table('users_info');
$exists = $query->where('email', '=', $user->email)-first();
if(is_object($exists)) {
// update email
}
else {
// insert email
}
问题是,有时 $exists 不是一个对象,即使该行确实存在。我也尝试过 is_null() 并且遇到了同样的问题。进行此检查的正确方法是什么?
【问题讨论】:
-
count($exists) != 0? -
如果它不是一个对象,那它是什么?试试
dd($exists) -
@TimLewis:我实际上也尝试过。当它为空(或任何它)时,它会产生一个错误。
-
@lukasgeiter:啊,熟悉的面孔。 :) dd 是什么?
-
嗯。奇怪的。试试@lukasgeiter 所说的,在您知道存在而您知道不存在的电子邮件上执行
dd($exists)。比较这些结果并从那里开始。此外,如果您使用->get()后跟count(),这可能会有所不同。很难说。