每个循环都在做,但数据混乱 我尝试了几种变体,但无法对子数组进行排序
在每个循环中运行
@foreach($record->criteria_list as $optKey=>$options)
我需要根据以下字段进行排序,并在for循环之前对主数组($ record)进行排序
$options->total_passed_user
其他9个示例(我已经尝试过)和以下2个示例是这些示例的一部分,它们正在错误输出...页面无法加载.... 是的,它是blade / laravel,但这没关系,因为我试图在循环和php formatting.page加载之前对这个数组进行排序。所有代码都可以正常工作,只是项目顺序不合适,并尝试根据$ options-重新排序> total_passed_user
@foreach($record->criteria_list as $optKey=>$options)
<?php
$correctPercentage = ( $record->total_test_completed_count) ? round(($options->total_passed_user/$record->total_test_completed_count)*100):0;
等...
答案 0 :(得分:0)
我认为usort
函数将起作用。 http://php.net/manual/en/function.usort.php
示例1(在PHP≥7.0中):推荐的解决方案
usort($record->criteria_list, function ($a, $b) {
return $a->total_passed_user <=> $b->total_passed_user;
});
...
@foreach($record->criteria_list as $optKey=>$options)
示例2:
function cmp_by_total_passed_user($a, $b) {
return $a->total_passed_user - $b->total_passed_user;
}
...
usort($record->criteria_list, "cmp_by_total_passed_user");
....
@foreach($record->criteria_list as $optKey=>$options)