我有一个从Laravel 4.2 Query Builder返回的数组,我正在尝试重新排列一点。我似乎不知道如何得到我想要的结果。
array (size=8)
0 =>
object(stdClass)[565]
public 'id' => int 53
public 'vehicle_id' => int 11
public 'date' => string '2015-10-27' (length=10)
1 =>
object(stdClass)[563]
public 'id' => int 55
public 'vehicle_id' => int 11
public 'date' => string '2015-10-29' (length=10)
2 =>
object(stdClass)[567]
public 'id' => int 61
public 'vehicle_id' => int 7
public 'date' => string '2015-10-30' (length=10)
3 =>
object(stdClass)[561]
public 'id' => int 63
public 'vehicle_id' => int 6
public 'date' => string '2015-10-30' (length=10)
4 =>
object(stdClass)[572]
public 'id' => int 64
public 'vehicle_id' => int 8
public 'date' => string '2015-10-30' (length=10)
5 =>
object(stdClass)[580]
public 'id' => int 65
public 'vehicle_id' => int 9
public 'date' => string '2015-10-30' (length=10)
6 =>
object(stdClass)[579]
public 'id' => int 66
public 'vehicle_id' => int 10
public 'date' => string '2015-10-30' (length=10)
7 =>
object(stdClass)[578]
public 'id' => int 57
public 'vehicle_id' => int 11
public 'date' => string '2015-10-31' (length=10)
所需结果示例:
array(
'2015-10-27' => array(11),
'2015-10-30' => array( 6, 7, 8, 9, 10 ),
'2015-10-31' => array(11)
)
我试过用foreach循环嵌套for循环等。有一段时间我都快疯了。我是不是错过了一些简单的东西?
$dates = [];
foreach($yourArray as $obj) {
$dates[$obj->date][] = $obj->vehicle_id;
}