在用laravel框架來獲取數據,若數據不存在時,覺得會返回空,其實不是的,實際上是一個 collection 值,會返回以下:laravel
object(Illuminate\Database\Eloquent\Collection)#191 (1) { ["items":protected]=> array(0) { } }
$result = User::where('id', 100)->get();
當 $result 爲空時,empty($result) 是不爲false的,仍是有值的,如上,所以要用 count($result) 來驗證;或者修改獲取語句,改成數組
$result = User::where('id', 100)->get()->toArray();
則會把 $result 轉化爲數組,這樣 empty($result) 就有效果了。框架