我是Laravel的新手,我只是想用First Name对这个表进行排序,但我不确定从哪里开始。
这是控制器,只需在表格上呈现数据。
$resultArray = object_to_array($result);
return view('home', [
'resultArray' => $resultArray
]);
答案 0 :(得分:2)
由于您可能会对数据进行分页,因此您不会真正想要对前端进行排序,否则您只需将前50个结果中的结果排序为按字母顺序排序的顺序
相反,你会做类似
的事情$users = User::orderBy('firstName')->paginate(50)
然后将用户传递给您的视图。
目前,您似乎正在将结果数据转换为数组,这并不是必需的,因为laravel返回的集合对象具有wrap some functional programming features的一些很好的功能,比如排序。
修改强>
如果您只想按照示例中当前显示的方式订购数据,最好的方法是使用usort。这不具备laravel集合的优点,但仍允许您根据需要对数组进行排序。
如果您有数据:
$items = [
['name' => 'barry'],
['name' => 'alan']
];
usort($items, function ($a, $b) { return $a['name'] > $b['name'];});
将数组重新排序为
$items = [
['name' => 'alan'],
['name' => 'barry']
];
它通过引用传递,因此原件将被修改。
我建议查看laravel集合类,它提供了一个更好的界面来处理这种数据。
答案 1 :(得分:0)
尝试对获取结果数组的名称进行排序。 表示如果从数据库中获取它,则按查询中的名称对结果进行排序。