如何在 foreach 循环中获取 rank 的值?

How to get the values of rank inside the foreach loop?

我正在尝试获取每所学校的排名,顺便说一句,这些排名已经按升序排列。 例如,我只想在 foreach 循环外打印 schoolToRank[0] 的排名。 这是我根据成本、人口和顶尖人才获得所有学校排名的代码:

    $rankedCost = setter_asc($test);
$rankedPopulation = setter_desc(setter_desc($user_selected_population));
$rankedTopN = setter_desc(setter_desc($user_selected_top));
$echo= ''; 
foreach($rankedCost as $school_toRank => $data){
      echo '(school = '.$school_toRank . ' is rank = ' . $data['rank']. ')';
}
echo "<br>";
foreach($rankedPopulation as $school_toRank => $data){
      echo '(school = '.$school_toRank . ' is rank = ' . $data['rank']. ')';
}
echo "<br>";
foreach($rankedTopN as $school_toRank => $data){
      echo '(school = '.$school_toRank . ' is rank = ' . $data['rank']. ')';
}

这是上面代码的结果:

因此,例如在学校 2 中,排名是 1 - 我如何单独访问它以仅显示具有该排名的学校(在 foreach 循环之外)?

您可以使用asort方法按排名排序

只需在数组上使用索引:

$rankedCost[2]['rank']