如何在Laravel中对集合进行排序
我正在使用sortBy函数进行排序,但无法将其用作排序依据For如何在Laravel中对集合进行排序,laravel,collections,Laravel,Collections,我正在使用sortBy函数进行排序,但无法将其用作排序依据For $this->journey->journey_item = $this->journey->journey_items->sortBy('activation_date'); dump($journey_items); //// sorted list for($i = 0;$i < Count($this->journey->journey_item);$i++){ du
$this->journey->journey_item = $this->journey->journey_items->sortBy('activation_date');
dump($journey_items); //// sorted list
for($i = 0;$i < Count($this->journey->journey_item);$i++){
dump("#".$i." ".$this->journey->journey_item[$i]->activation_date);
}
$this->journey->journey\u item=$this->journey->journey\u items->sortBy('activation\u date');
转储($Travely_项目);//排序表
对于($i=0;$ijourney->journey_项);$i++){
转储(“#“$i.”.$this->旅程->旅程项目[$i]->激活日期);
}
当它输入For时,它将变为未排序。
我哪里做错了?
我能做什么
此外,我还创建了一个新的集合,并尝试使其均衡,但它也没有尝试使用foreach。使用集合排序时,它将对数组进行排序,而不是
键
。。正如我看到的,您正在使用键[$I]
使用foreach
foreach($this->journey->journey_item as $journey_item){
dump($journey_item);
}
或者你使用如下
$this->journey->journey_item = $this->journey->journey_items->sortBy(function ($journey_item) {
return $journey_item->activation_date;
});
对于第二个解决方案,它给了我错误;asort()要求参数2为int,对象给定如何将激活日期指定为sortBy funct