判断Laravel Eloquent获取数据结果集是否为空

在使用Laravel Eloquent模型时,我们可能要判断取出的结果集是否为空,但我们发现直接使用is_nullempty是无法判段它结果集是否为空的。

var_dump之后我们很容易发现,即使取到的空结果集, Eloquent仍然会返回Illuminate\Database\Eloquent\Collection对象实例。
其实,Eloquent已经给我们封装几个判断方法。

$result = Model::where(...)->get();
//不为空则
if ($result->first()) { }
if (!$result->isEmpty()) { }
if ($result->count()) { }

参考网站:http://stackoverflow.com/questions/20563166/eloquent-collection-counting-and-detect-empty

转自:http://douyasi.com/laravel/eloquent_collection_detect_empty.html

时间: 2024-10-13 08:31:00

判断Laravel Eloquent获取数据结果集是否为空的相关文章

Laravel Eloquent ORM 数据model操作

Laravel ORM 数据model操作 注意:ORM关联操作最后一定要记得带get()方法!否则会获取不到数据,为null 如: posts表 comments表  id id  contents post_id comment post模型内定义一对多关系hasMany 1 //定义关联关系 2 public function comments(){ 3 return $this->hasMany(Comments::class,'post_id','id'); 4 } 1 //容器内调用

laravel中查询数据结果集变为数组

在laravel中,查询数据库后,返回的对象,可以用下面的办法变为数组 $nodes = Db::table('system_node')->orderBy('sort', 'asc')->orderBy('id' ,'asc')->get()->map(function ($value) { return (array)$value; })->toArray();

Laravel Eloquent 判断取出的结果集是否为空

在使用Laravel Eloquent模型时,我们可能要判断取出的结果集是否为空,但我们发现直接使用is_null或empty是无法判段它结果集是否为空的. var_dump之后我们很容易发现,即使取到的空结果集, Eloquent仍然会返回Illuminate\Database\Eloquent\Collection对象实例.其实,Eloquent已经给我们封装几个判断方法. $result = Model::where(...)->get(); //不为空则 if ($result->fi

laravel Eloquent get获取空的数据问题

在用laravel框架来获取数据,若数据不存在时,以为会返回空,其实不是的,会返回如下: object(Illuminate\Database\Eloquent\Collection)#191 (1) { ["items":protected]=> array(0) { } } $result = User::where('id', 100)->get(); 当 $result 为空时,empty($result) 是不为false的,还是有值的,如上,因此要用 count

PHP 基于laravel框架获取微博数据之二 用户数据的使用

开始抓取微博数据的时候,只是想获得一条热门微博下的所有评论,因为里面有不少图片广告,所以想试试能不能分析出热门微博评论里的异常用户. 使用PHP的Laravel框架后,通过队列.命令等各种功能,最后构架了一套完整的微博用户数据抓取平台,经过一段时间的运行积累了大量数据,那么使用这些数据能做什么呢? 微博数据分析很早就有人在做了,网上采集分析工具貌似有很多,搜索一下想找一些微博数据分析的具体方案.世事变幻,发现很多几年前的微博数据分析平台都不能用了,可能微博数据分析和微博一样在商业上还是没有什么更

laravel Eloquent操作

基本用法 我们先从建立一个 Eloquent 模型开始.模型通常放在 app 目录下,但是您可以将它们放在任何地方,只要能通过 composer.json 自动载入.所有的 Eloquent 模型都继承于Illuminate\Database\Eloquent\Model . 定义一个 Eloquent 模型 class User extends Model {} 你也可以通过 make:model 命令自动生成 Eloquent 模型: php artisan make:model User

Laravel Eloquent使用小记

文章保存地址:https://github.com/wanguowan/notetext-blog/blob/master/Eloquent.md Laravel Eloquent使用小记 今天因为开发数据库业务中间层需要,开始研究Laravel Eloquent,因为刚开始使用laravel框架的时候,都是使用query,查询构建器来写sql类似于 DB::connection('mydb')->table('mylove') ->where( 'name', 'guowan' ) ->

Laravel Eloquent ORM--整理

介绍 Laravel 的 Eloquent ORM 提供了漂亮.简洁的 ActiveRecord 实现来和数据库的互动. 每个数据库表会和一个对应的「模型」互动. 在开始之前,记得把 config/database.php 里的数据库连接配置好. 基本用法 我们先从建立一个 Eloquent 模型开始.模型通常放在 app 目录下,但是您可以将它们放在任何地方,只要能通过 composer.json 自动载入.所有的 Eloquent 模型都继承于 Illuminate\Database\Elo

【转载】Hibernate---在Hibernate中获取数据方式与缓存使用

原文地址:http://www.blogjava.net/pengpenglin/archive/2010/03/15/315440.html Hibernate获取数据的方式有不同的几种,其与缓存结合使用的效果也不尽相同,而Hibernate中具体怎么使用缓存其实是我们很关心的一个问题,直接涉及到性能方面. 缓存在Hibernate中主要有三个方面:一级缓存.二级缓存和查询缓存 ①一级缓存在Hibernate中对应的为session范围的缓存,也就是当session关闭时缓存即被清除,一级缓存