php - Laravel 检查它是否有来自模型的数据

标签 php laravel laravel-4

我从 url 接收数据并将其发送到模型,然后像这样在模型中显示。

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

然后在 View 中。

但是为了检查它是否有数据,我在这样的 View 中这样做:

<?php

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

但两者都显示数组。

我如何检查给定的 $data 是否存在于数据库中。

最佳答案

您很可能会返回一个 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

关于php - Laravel 检查它是否有来自模型的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27660175/

相关文章:

php - 在 for 循环中按字段值返回最常见的结果?

mysql - Laravel 连接表和连接行

mysql - Laravel Eloquent 和 3 表关系

php - Laravel orWhere()/MySQL 或查询需要很长时间

mysql - Laravel 4:带有 IN 语句的 DB::select

php - 无法使用 Apache 在 Laravel 中找到路线

php - 在 Woocommerce 3 中检索自定义订单项元数据值

php - 向购物车申请 20% 的折扣,上限为上限

php - Laravel 从查询构建器获取特定列

php - 客户端上的套接字连接不起作用