如何使用php/blade更改div类

如何使用php/blade更改div类,php,laravel-blade,Php,Laravel Blade,我是第一次使用blade,需要根据可用属性的数量更改此div元素的样式。我需要编写一个if语句,如果等于或小于1,则隐藏div,如果等于2,则添加另一个类 我将如何使用blade或php编写此文件 @if (isset($participatingProperties) && !empty($participatingProperties) && is_array($participatingProperties)) <?php $i = 0; ?&

我是第一次使用blade,需要根据可用属性的数量更改此div元素的样式。我需要编写一个if语句,如果等于或小于1,则隐藏div,如果等于2,则添加另一个类

我将如何使用blade或php编写此文件

@if (isset($participatingProperties) && !empty($participatingProperties) && is_array($participatingProperties))
    <?php $i = 0; ?>
    @foreach ($participatingProperties as $key => $property)
        @if ($i++ % 3 === 0)
        <div class="item item2 {{ $i < 3 ? 'active' : '' }}">
        @endif
@if(isset($participatingProperties)&&&!empty($participatingProperties)&&is_数组($participatingProperties))
@foreach($key=>$property的participatingProperties)
@如果($i++%3==0)
@恩迪夫
我的理解是:
您有一个
$participatingProperties
数组和一个div要打印。
当它有0或1个元素时,不会发生任何事情。
当有2个元素时,div将以特定样式打印。
当有3个或更多元素时,div将以另一种样式打印。
(超过3个元素没有规则)

我会简单地说:

@php($count=count($participatingProperties))
@如果($count>1)
div内容
@恩迪夫
如果您不需要为每一个数量都指定特定的样式,则更简单:

@if (count($participatingProperties) > 1)
    <div class="myclass">
        div content
    </div>
@endif
@if(计数($participatingProperties)>1)
div内容
@恩迪夫
同时使用
empty
isset
是不正确的。我认为您不必检查
$participatingProperties
是否是一个数组,而是确保它始终位于后端。如果您至少返回一个空数组,
count
将返回
0

@if (count($participatingProperties) > 1)
    <div class="myclass">
        div content
    </div>
@endif