字典排序的问题?
程序员文章站
2022-04-23 19:50:55
...
$a=array(2,1,4,7,1,4,1,9)
想得到key/value,其中key是值,value是该值出现的次数,如下所示:
$b={2:1,1:3,4:2,7:1,9:1}
$a中元素比较多,如何用最少的循环解决这个问题?
回复内容:
$a=array(2,1,4,7,1,4,1,9)
想得到key/value,其中key是值,value是该值出现的次数,如下所示:
$b={2:1,1:3,4:2,7:1,9:1}
$a中元素比较多,如何用最少的循环解决这个问题?
// 直接用函数
>>> array_count_values($a)
=> [
2 => 1,
1 => 3,
4 => 2,
7 => 1,
9 => 1,
]
$b = [];
foreach ($a as $i) {
$b[$i] = isset($b[$i]) ? $b[$i] + 1 : 0;
}
循环一次