我有一个项目,我从数据库中获取帖子,并在主页视图中呈现.就像一个博客.(在主页上,我将此限制为3篇帖子)

表中有6行,我想根据奇数行和偶数行设置输出样式.

Here is my controller:

public function index()
{
   $counter = Post::count();
   $posts= DB::table('posts')->orderBy('id', 'DESC')->limit(3)->get();

    return view('home',compact('posts','counter')); 
}

我希望偶数行有<div class="even">个,奇数行有<div class="odd">

当我在$counter上输入dd时,得到的值是6.这是正确的.我的桌子上有6排.

根据我发现的其他文章,我目前正在try :

@foreach ($posts as $post)
@if($counter % 2 == 0)
<div class="even">{{$post->title}}</div>
@else
<div class="odd">{{$post->title}}</div>
@endif

这没什么用.仍然将行输出为6,5,4,3,2,1

那么我如何在Foreach循环中编写IF语句来表示...

if ($counter == odd)
<div class="odd">
else
<div class="even">

我要找的订单是:

  • 古怪的
  • 即使
  • 古怪的
  • 即使

推荐答案

$counter是一个静态变量,因此调用$counter % 2 == 0将始终显示相同的结果.

If you are using Laravel 5.4+@foreach()中包含一个$loop变量.所以你可以在循环中访问你的mod部门.

Here is the example for Laravel 5.4+

@foreach ($posts as $post)
    @if($loop->iteration % 2 == 0)
        <div class="even">{{$post->title}}</div>
    @else
        <div class="odd">{{$post->title}}</div>
    @endif
@endforeach

Laravel相关问答推荐

如何判断用户是否已登录Laravel

如何在 Laravel 中获取特定月份的最后一个日期?

如何返回Blade Laravel 中的按钮?

分页计数(*)查询问题

不能在 laravel 中使用控制器名称,必须使用命名空间

Laravel created_at 返回对象代替数据库中的日期格式?

如何在laravel中将数组转换为字符串?

Laravel:Blade foreach 循环 bootstrap 列

你如何找到 Laravel 外观背后的底层类?

Laravel 表 * 没有名为 * 的列

Laravel 框架类在 PHPUnit 数据提供程序中不可用

如何比较laravel中的两个加密(bcrypt)密码

使用数据库用户提供程序时如何在 Laravel 中创建密码重置方法

如何从 Windows 命令提示符在 Laravel 中运行 PHPUnit

命令未定义异常

Laravel 邮件密件抄送

在 laravel 中删除排队的作业(job)

复合唯一密钥验证 - laravel

Laravel 更新查询

使用 Carbon 将小时转换为 PM 和 AM