使用array_count_values函數(shù)可以找出數(shù)組中相同值出現(xiàn)的次數(shù),array_count_values用法如下:
創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供古藺網(wǎng)站建設(shè)、古藺做網(wǎng)站、古藺網(wǎng)站設(shè)計(jì)、古藺網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、古藺企業(yè)網(wǎng)站模板建站服務(wù),十載古藺做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
array_count_values
—
統(tǒng)計(jì)數(shù)組中所有的值出現(xiàn)的次數(shù)
array
array_count_values
(
array
$input)
array_count_values()
返回一個(gè)數(shù)組,該數(shù)組用
input
數(shù)組中的值作為鍵名,該值在:input
數(shù)組中出現(xiàn)的次數(shù)作為值
input:統(tǒng)計(jì)這個(gè)數(shù)組的值
返回值:
返回一個(gè)關(guān)聯(lián)數(shù)組,用
input數(shù)組中的值作為鍵名,該值在數(shù)組中出現(xiàn)的次數(shù)作為值。
示例:
?php
$array?=?array(1,?"hello",?1,?"world",?"hello");
print_r(array_count_values($array));
?
以上例程會(huì)輸出:
Array
(
[1] = 2
[hello] = 2
[world] = 1
)需要取出哪個(gè)值的次數(shù),就在返回的數(shù)組中獲取對(duì)應(yīng)的key值即可,例如示例中array_count_values($array)['hello']就可以取出數(shù)組中hello的個(gè)數(shù)。
思路,僅供參考:
1、用array_unique()函數(shù),然后count()一下,看一下是不是相等,不相等就證明有重復(fù)的值,
2、雙重foreach循環(huán),然后判斷每個(gè)值有多少個(gè)重復(fù)的
?php??????
$input?=?array(4,?"4",?"3",?4,?3,?"3");??????
$result?=?array_unique($input);??????
var_dump($result);??????
?
array_unique -- 移除數(shù)組中重復(fù)的值說明array array_unique ( array array )
array_unique() 接受 array 作為輸入并返回沒有重復(fù)值的新數(shù)組。
注意鍵名保留不變。array_unique() 先將值作為字符串排序,然后對(duì)每個(gè)值只保留第一個(gè)遇到的鍵名,接著忽略所有后面的鍵名。這并不意味著在未排序的 array 中同一個(gè)值的第一個(gè)出現(xiàn)的鍵名會(huì)被保留。
注: 當(dāng)且僅當(dāng) (string) $elem1 === (string) $elem2 時(shí)兩個(gè)單元被認(rèn)為相同。就是說,當(dāng)字符串的表達(dá)一樣時(shí)。
第一個(gè)單元將被保留。
例子1. array_unique() 例子
復(fù)制代碼 代碼如下:?php
$input = array("a" = "green", "red", "b" = "green", "blue", "red");
$result = array_unique($input);
print_r($result);?上例將輸出:
復(fù)制代碼 代碼如下:Array([a] = green[0] = red[1] = blue)例子2. array_unique() 和類型
上例將輸出:
復(fù)制代碼 代碼如下:?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);?復(fù)制代碼 代碼如下:array(2) {
參考:
?php
$arr1?=?array("1","2","3","4","5","6","7","8","9","10");
$arr2?=?array("11","12","13","14","15","16","17","18","19","20");
$a?=?2;
$b?=?6;
$c?=?9;
$d?=?11;
$e?=?15;
$f?=??20;
$x?=?$y?=?0;
foreach(array($a,?$b,?$c,?$d,?$e,?$f)?as?$test){
in_array($test,?$arr1)??$x++;
in_array($test,?$arr2)??$y++;
}
echo?"?x?:?",?$x,?"?y?:?",?$y,?"\n";
PHP 中的 array_count_values() 函數(shù)可以實(shí)現(xiàn)
array_count_values() 函數(shù)用于統(tǒng)計(jì)數(shù)組中所有值出現(xiàn)的次數(shù)。
本函數(shù)返回一個(gè)數(shù)組,其元素的鍵名是原數(shù)組的值,鍵值是該值在原數(shù)組中出現(xiàn)的次數(shù)。
array_count_values(array)
例如:
?php
$a=array("Cat","Dog","Horse","Dog");
print_r(array_count_values($a));
?
輸出:
Array ( [Cat] = 1 [Dog] = 2 [Horse] = 1 )
?php
$array=array("1","2","2");
if?(count($array)?!=?count(array_unique($array)))?{???
echo?'該數(shù)組有重復(fù)值';??
}
else
{
echo?"無";
}
?
把數(shù)組里的數(shù)字改一下就明白了