Php 字符串在数组中的出现

Php 字符串在数组中的出现,php,arrays,Php,Arrays,我需要计算给定数组中每个元素的出现次数。到目前为止,我已经成功地实现了这一点,唯一的例外是它循环所有元素,并且我只需要输出那些唯一的元素 <?php $array = array('b','b','a','a','b'); foreach ($array as $element) { $hold = implode(" ", $array); print $element. ' -> ' . substr_count($hold, $element) . '&l

我需要计算给定数组中每个元素的出现次数。到目前为止,我已经成功地实现了这一点,唯一的例外是它循环所有元素,并且我只需要输出那些唯一的元素

<?php

$array = array('b','b','a','a','b');

foreach ($array as $element) {

    $hold = implode(" ", $array);
    print $element. ' -> ' . substr_count($hold, $element) . '<br />';

}
我想删除重复的元素,但如果在我
内爆()
之前执行了
array\u unique()
,并随后进行计数,则由于我已删除了重复元素,因此只会出现一次。

用于为您执行此操作

$counts = array_count_values($array);

foreach ($counts as $match => $count) {
     echo "$match -> $count";
}

是的,可以。快速问题-如何对输出进行升序排序。@user3788751:使用
sort()
当它不是数组时,如何使用
sort()
包装
$match
。你到底想要什么?您是否选中了
ksort
?@user3788751:您是否选中了
ksort
?(不确定您为什么忽略此建议)
$counts = array_count_values($array);

foreach ($counts as $match => $count) {
     echo "$match -> $count";
}