用于更改样式的各种编号项的 Laravel if 语句

我有一个这样布置的产品画廊:

http://img3.mukewang.com/60cd57920001c4d102290170.jpg

<div class="row no-gutters bg-light">

                @foreach ($products as $product)

                <!-- Column 1 -->

                <div class="col-6 @if(count($products) === 1 || 4 || 5) card-w-bg @endif">

                    <div class="row no-gutters">

                        <!-- Column 1-a --> 

                        <div class="col-6 showcase-col">

                            <div class="overlay"></div>

                            <div class="showcase-hero showcase-text">

                                <h2 class="card-title mb-4"><a href="">{{ $product->name }}</a></h2>

                                <h3 class="card-subtitle text-muted">{{ $product->details }}</h3>

                                <h4 class="mb-3">{{ $product->presentPrice() }}</h4>

                                <p class="card-text mb-4 d-none d-md-block">Lorem ipsum dolor sit amet consectetur adipisicing elit. A

if 语句只需要在第 1、4 和 5 项中添加深灰色 bg。


qq_笑_17
浏览 178回答 3
3回答

隔江千里

如果 1,4 和 5 是产品 ID,您可以:@if($product->id&nbsp;===&nbsp;1&nbsp;||&nbsp;$product->id&nbsp;===&nbsp;4&nbsp;||&nbsp;$product->id&nbsp;===&nbsp;5)&nbsp;card-w-bg&nbsp;@endif如果 1,4 和 5 是循环中的位置:@if($loop->iteration&nbsp;===&nbsp;1&nbsp;||&nbsp;$loop->iteration&nbsp;===&nbsp;4&nbsp;||&nbsp;$loop->iteration&nbsp;===&nbsp;5)&nbsp;card-w-bg&nbsp;@endif

红颜莎娜

如果条件错误,您申请的方式,正确的方式如下所示:@if(count($products) == 1 || count($products) == 4 || count($products) == 5) //change over here//some code&nbsp;@endif因此,更换&nbsp;<div class="col-6 @if(count($products) === 1 || 4 || 5) card-w-bg @endif">到以下几点:<?php $reqArr=[1,4,5]; ?><div class="col-6 @if(in_array(count($products),$reqArr)) card-w-bg @endif">

凤凰求蛊

您可能希望使用由 laravel 的 foreach 创建的循环变量,以便您可以访问当前索引,而不是使用counton$products将始终返回相同的值。所以你可以做这样的事情:<div&nbsp;class="col-6&nbsp;{{&nbsp;$loop->index&nbsp;==&nbsp;0&nbsp;||&nbsp;3&nbsp;||&nbsp;4&nbsp;?&nbsp;'card-w-bg'&nbsp;:&nbsp;''}}">
打开App,查看更多内容
随时随地看视频慕课网APP