Laravel检查模型中是否有数据

时间:2014-12-26 17:44:07

标签: php laravel laravel-4

我从网址接收数据并将其发送到模型,然后在模型中显示。

public function BlogDisplay($data=NULL)
    {
        $BlogData = BlogModel::where('BlogLink', '=', $data)->get();
        return View::make('Blogs', array('BlogData' => $BlogData));

然后在视图中。

但要检查它是否有数据我在这样的视图中这样做:

<?php

   if($BlogData)
   {
     var_dump($BlogData);
     echo 'has data';
   }
   else
   {
     var_dump($BlogData);
     echo 'has no data';
   }
?>

但它都显示了数组。

如何检查数据库中是否存在$ data。

1 个答案:

答案 0 :(得分:2)

您最有可能返回一个Illuminate/Database/Eloquent/Collection对象,并且 truthy 检查将返回true,因为该对象已存在。你可以做的是使用该对象内置的isEmpty()方法。

http://laravel.com/api/4.2/Illuminate/Database/Eloquent/Collection.html#method_isEmpty

在您看来:

@if ($BlogData->isEmpty())
    Nothing Here
@else 
    Got data!
@endif