如何将数字添加到重复字符串中


How to add a number to a duplicated string?

我有一个这样的字符串:$str = '车,狗,房子,狗,狗,房子,盘子';

我怎么能得到这样的输出呢?

<>之前狗# 1狗# 2狗# 3车房子# 1房子# 2菜之前

因为我想通过添加一个数字使重复的字符串成为唯一的字符串

提前感谢!

使用str_word_countarray_count_values函数的解:

$str = 'car, dog, house, dog, dog, house, dish';
$counts = array_count_values(str_word_count($str, 1));
foreach ($counts as $name => $c) {
    if ($c == 1) {
        echo $name . PHP_EOL;
    } else {
        for ($i = 1; $i <= $c; $i++) echo $name . ' #'. $i . PHP_EOL;
    }
}
输出:

car
dog #1
dog #2
dog #3
house #1
house #2
dish