为了账号安全,请及时绑定邮箱和手机立即绑定

检查 Laravel 对象是否有项目

检查 Laravel 对象是否有项目

PHP
慕无忌1623718 2022-10-09 16:45:02
我必须确保我只在刀片中显示一个 foreach 循环 - 仅当我的变量中有元素时。所以我需要检查我的变量是否为空(在非常动态的刀片中可能没有这样的变量) - 它有元素 - 如果它是数组,如果它是集合,如果它是分页集合?到目前为止,我做了这个小功能,但它看起来有点奇怪,因为我对 Laravel 不是很好,我想知道是否已经有更好的东西了?public static function hasItems($object) {        if (is_null($object)) {            return false;        }        //array        if (            is_array($object) &&             count($object) > 0        ) {            return true;        }        //Laravel collection        if (            is_object($object) &&            $object instanceof \Illuminate\Support\Collection &&            $object->count() > 0                    ) {            return true;        }        //Laravel paginator        if (            is_object($object) &&            $object instanceof \Illuminate\Pagination\LengthAwarePaginator &&            count($object) > 0                  ) {            return true;        }        return false;    }
查看完整描述

1 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

您可以使用isEmpty()方法链接。或者在 Blade 中,您可以使用@forelse基本上foreach带有 if链接的指令

编辑 1:我刚刚意识到您说您也可以将 null 作为值。那么解决方案是:

forelse($var ?? [] as $varItem)


@empty


@endforelse 


查看完整回答
反对 回复 2022-10-09
  • 1 回答
  • 0 关注
  • 71 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信