这是我的usort代码,它使我输出最高值,我知道我可以从最高到最低输出它,但我想输出特定值
`<?php
usort($averagesa, function($a, $b) {
if ($a['avg'] == $b['avg']) {
return 0;
}
return ($a['avg'] > $b['avg']) ? -1 : 1;
});
$highesta = $averagesa[0];
$highest_average = $highesta['avg'];
echo $highest_average;`
这是数组内容的示例
$querya1 = ("SELECT ROUND(AVG(Compv11),2), dept_code , camp_code
FROM performance
INNER JOIN employment
ON employment.emp_code=performance.emp_id AND employment.dept_code=performance.dept_id
WHERE (empg_code=5 or empg_code=2) and (dept_code=10 and not stat_code=6)");
$resulta1 = mysql_query($querya1) or die(mysql_error());
// Print out result
while($rowa1 = mysql_fetch_array($resulta1)){
$averagesa[1] = array(
'avg' => $rowa1['ROUND(AVG(Compv11),2)'],
'empg_code' => 1,
'dept_id' => 3,
'dept_code' => $rowa1['dept_code'],
'camp_code' => $rowa1['camp_code']
);
echo "".$rowa1['ROUND(AVG(Compv11),2)'];
$ga1 = "".$rowa1['ROUND(AVG(Compv11),2)'];
}
?>`
最佳答案
usort返回布尔值(是否起作用),并对数组值进行排序。因此,如果您的数组有5个项目,那么在usort之后,array [0]将是最高的,array [1]将是第二高的... ...还是我误解了您的问题?查看php.net/manual/en/function.usort.php,该示例显示了结果数组
关于php - 我可以使用usort函数显示仅第二高的值(或第三..等等)吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46859428/