php 中可通過 array_count_values() 函數(shù)去重?cái)?shù)組并保留重復(fù)元素的次數(shù)。該函數(shù)返回一個(gè)關(guān)聯(lián)數(shù)組,鍵為原始數(shù)組中的元素,值為這些元素出現(xiàn)的次數(shù)。
PHP 數(shù)組去重并保留重復(fù)元素的次數(shù)
在 PHP 中,我們經(jīng)常會(huì)遇到需要去重?cái)?shù)組,但還需要保留重復(fù)元素出現(xiàn)的次數(shù)的情況。我們可以使用 array_count_values()
函數(shù)來實(shí)現(xiàn)此功能。
用法:
array_count_values($array)
會(huì)返回一個(gè)新的關(guān)聯(lián)數(shù)組,其中鍵為原始數(shù)組中的元素,值為這些元素出現(xiàn)的次數(shù)。例如:
$array = [1, 2, 3, 4, 5, 1, 2, 3]; $counts = array_count_values($array); print_r($counts);
登錄后復(fù)制
輸出:
[1] => 2 [2] => 2 [3] => 2 [4] => 1 [5] => 1
登錄后復(fù)制
實(shí)戰(zhàn)案例:
以下是一個(gè)實(shí)戰(zhàn)案例,演示了如何使用 array_count_values()
函數(shù)去重?cái)?shù)組并保留重復(fù)元素的次數(shù):
// 創(chuàng)建一個(gè)包含重復(fù)元素的數(shù)組 $array = ['apple', 'orange', 'apple', 'banana', 'orange', 'cherry']; // 使用 array_count_values() 去重并統(tǒng)計(jì)重復(fù)元素出現(xiàn)的次數(shù) $counts = array_count_values($array); // 遍歷關(guān)聯(lián)數(shù)組,打印水果名稱和出現(xiàn)的次數(shù) foreach ($counts as $fruit => $count) { echo "$fruit出現(xiàn)了 $count 次\n"; }
登錄后復(fù)制
輸出:
apple出現(xiàn)了 2 次 orange出現(xiàn)了 2 次 banana出現(xiàn)了 1 次 cherry出現(xiàn)了 1 次
登錄后復(fù)制
通過 array_count_values()
函數(shù),我們可以輕松地去重?cái)?shù)組并保留重復(fù)元素的次數(shù)。這在數(shù)據(jù)統(tǒng)計(jì)和分析等場(chǎng)景中非常有用。