首先,找到最大值:
$etudiant = array ('a'=>'2','b'=>'5', 'c'=>'6', 'd'=>'6', 'e'=>'2');
$maxValue = max($etudiant);
其次,找到出现多次的值:
$dups = array_diff_assoc($etudiant, array_unique($etudiant));
最后,检查原始数组中是否匹配$maxValue或$dups中列出的值:
$MaxArray = $OtherArray = $ElseArray = array();
foreach ($etudiant as $key => $value) {
if ($value == $maxValue) {
$MaxArray[$key] = $value;
} else if (in_array($value, $dups)) {
$OtherArray[$key] = $value;
} else {
$ElseArray[$key] = $value;
}
}
你会得到:
$MaxArray: Array
(
[c] => 6
[d] => 6
)
$OtherArray: Array
(
[a] => 2
[e] => 2
)
注意:我不确定您是否希望$MaxArray仅在源数组中出现多次时才包含最大值元素.如果是这样,只需将最大调用更改为:
$maxValue = max($dups);