我正在编写代码来对父级中的 Eloquent 关系实例进行排序。
$categories = CategoryMain::with('subs')->get();
foreach($categories as &$category){
$category->sub = $category->subs->sortBy('name');
}
我在 foreach 循环内得到了正确的排列,我通过执行 die(var_dump()); 来验证这一点,
然而,一旦到了外面,就好像根本没有改变一样。 为什么会发生这种情况?
最佳答案
尝试这样的事情,看看输出是什么:
$categories = CategoryMain::with('subs')->get();
$counter = 0;
foreach($categories as $category) {
$categories[$counter]->sub = $category->subs->sortBy('name');
$counter++
}
//output the data of catgories
dd($categories);
关于PHP Laravel foreach 不修改值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44558124/