Laravel - groupBy查询 - 分组结果

时间:2016-05-03 15:25:02

标签: php mysql sql laravel

我有一个博客表,我有一个名为pinned的专栏,基本上是应该位于最顶层的博客帖子,并且在所有固定博客上都有一个标题pinned。< / p>

例如。

Pinned
----------
Pinned Blog title 1
Pinned Blog title 2
-----------
Regular
------------
Normal blog title 1
Normal blog title 2

如何使用foreach循环和laravel groupBy查询?

到目前为止我的查询:

    $blogs = Blog::where('active', 1)->get()->groupBy('pinned');

这给了我两个博客阵列;固定和定期。

到目前为止一切顺利。但是我不知道如何用这个做一个foreach循环...请帮忙。

我尝试了以下但没有帮助..

 foreach ($blogs as $blog) {
        foreach ($blog as $item) {
            if($item->pinned)
                echo 'Pinned';
            echo($item->title);
        }
    }

谢谢!

1 个答案:

答案 0 :(得分:0)

您的查询应该是:

$blogs = Blog::where('active', 1)->groupBy('pinned')->get();

foreach循环可能就像这样

foreach ($blogs as $blog) {
    if($blog->pinned)
        echo 'Pinned';
    else echo($blog->title);
}