【发布时间】:2014-07-27 12:14:03
【问题描述】:
我希望我的数据按日期分组并排序。然后我希望它在一个看起来像这样的数组中传递它:
这是我的查询:
$events = Event::with('specifications', 'users', 'location')
->join('locations','location_id', '=', 'events.location_id')
->where('locations.zip', '=', $data['location'])
->where('date', '>=', $data['date'])
->orderBy('date')
->get();
它给了我一个这样的数组:
[0] => Event Object
(
[...]
[attributes:protected] => Array
(
[id] => 1
[title] => yyy
[image] => img/event/default.jpg
[desc] => Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing eli
)
[....]
)
[1] => Event Object
(
[...]
[attributes:protected] => Array
(
[id] => 2
[title] => xxx
[image] => img/event/default.jpg
[desc] => Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing eli
)
[....]
)
但我想要一个像这样排序和分组的数组(你知道我的意思;)):
[0] = array(
[0] => date = xx.xx.xxxx
[1] => array (
Event Object ()
)
)
[1] = array(
[0] => date = yy.yy.yy
[1] => array (
Event Object ()
)
)
这样我就可以在两个循环中循环遍历数组。一个用于日期,一个用于对象。像这个坏例子:
foreach($event_by_date as $evendate){
<h2>$eventdate</h2>
foreach($eventdate as $event){
$event->name
$event->desc
... etc ...
}
}
我如何使用 laravel 和 eloquent 查询来做到这一点? 我不是 laravel/php 忍者 ;)
【问题讨论】:
-
您的问题不清楚您要达到的目标,我猜您想要 1. 选择所有事件并按日期排序,或者您想要 2. 选择所有事件和组他们按日期是哪一个?
-
我想按日期对它们进行分组和排序..
标签: php mysql arrays laravel eloquent