我有一个脚本,将一堆变量(在本例中为随机字母A到D)放入一个数组中,计算这些变量的频率,找到最高频率,然后找到与该频率匹配的密钥。
$answerlist = array($a1, $a2, $a3, $a4,);
$count = array_count_values($answerlist);
$high_value = max($count);
$high_key = array_search($high_value, $count);
print_r ($high_key);
但是,如果有2个相等的最高值,则array_search仅返回第一个键。有没有办法返回两个?
答案 0 :(得分:3)
这应该这样做:
$high_keys = array_keys($count, $high_value);
如果在haystack中多次找到needle,则会返回第一个匹配的键。要返回所有匹配值的键,请使用带有可选search_value参数的array_keys()。