Php 但是,如果(!empty($tags))的计算结果为true,则集合为空

Php 但是,如果(!empty($tags))的计算结果为true,则集合为空,php,laravel,Php,Laravel,仅当$tags集合不为空时,我才尝试呈现一些HTML代码。但是,即使集合为空,也会呈现HTML代码 当我dd($tags)时,我得到一个空的[]。为什么会这样 @if(!empty($tags)) <p><i class="fas fa-tags"></i> Tags</p> <div class='image-tags'> @foreach($tags as $tag) <

仅当
$tags
集合不为空时,我才尝试呈现一些HTML代码。但是,即使集合为空,也会呈现HTML代码

当我
dd($tags)
时,我得到一个空的
[]
。为什么会这样

@if(!empty($tags))
    <p><i class="fas fa-tags"></i> Tags</p>
    <div class='image-tags'>
        @foreach($tags as $tag)
            <a class='image-tag' href="#">{{ $tag->name }}</a>
        @endforeach
    </div>
@endif
@if(!empty($tags))
标签

@foreach($tags作为$tag) @endforeach @恩迪夫
对于类似数组或
$tags->count()
如果是laravel集合,则应使用
计数($tags)
对于类似数组或
$tags->count()
如果是laravel集合,则应使用
计数($tags)
尝试

@if(count($tags) > 0)
    More code here ....
@endif
因为
$tags
是一个数组

试试看

@if(count($tags) > 0)
    More code here ....
@endif
由于
$tags
是一个数组

请检查此url,此处给出了空函数的正确用法

在您的情况下,如果$tags是一个数组,那么您应该如下使用:

if(count($tags) > 0)
请检查这个url,这里给出了空函数的正确用法

在您的情况下,如果$tags是一个数组,那么您应该如下使用:

if(count($tags) > 0)

PHP将Laravel集合视为一个对象。如果该对象不是
null
,则
empty
函数将始终返回true。如果要检查集合是否包含元素,可以使用collection函数

@if($tags->isNotEmpty())

@endif

PHP将Laravel集合视为一个对象。如果该对象不是
null
,则
empty
函数将始终返回true。如果要检查集合是否包含元素,可以使用collection函数

@if($tags->isNotEmpty())

@endif

尝试使用
sizeof($tags)>0
尝试使用
sizeof($tags)>0
但是如果数组有很多元素,这将花费更长的时间。但是如果数组有很多元素,这将花费更长的时间。