實作步驟:1、用array_count_values()統計元素出現次數,傳回一個關聯數組;2、遍歷關聯數組,判斷值是否為1,如果為1則取出對應鍵名,並賦值給一個空數組,語法“foreach(關聯數組as $k=>$v){if($v==1){$r[]=$k;}}”,會傳回一個包含全部不重複元素的結果陣列;3、用count()取得結果陣列的長度,語法「count($r)」。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
在php中,可以利用array_count_values() 和count()函數獲得數組中不重複元素的個數。
實作步驟:
步驟1:用array_count_values()統計元素出現次數
array_count_values() 函數可以統計數組中所有數值出現的次數;如果次數為1,則該元素就不重複。
array_count_values() 函數會傳回一個關聯數組,其元素的鍵名是原始數組的值,鍵值是該值在原始數組中出現的次數。
<?php header('content-type:text/html;charset=utf-8'); $arr=array("A","Cat","Dog","A","Dog","a",3,4); var_dump($arr); $count=array_count_values($arr); var_dump($count); ?>
可以看出,在關聯陣列中,鍵值為1的元素是不重複元素,取得對應的鍵名即可。
步驟2:使用foreach語句遍歷關聯數組,取得鍵值為1的元素的鍵名,並將其賦值給一個空數組
$result=[]; foreach($count as $k=>$v){ if($v==1){ $result[]=$k; } } var_dump($result);
#會傳回一個包含全部不重複元素的結果陣列
步驟3:使用count()函數取得結果陣列的長度,也就是統計該陣列中元素的個數
$len=count($result); echo "不重复元素的个数为:".$len;
推薦學習:《PHP影片教學》
以上是php怎麼會得到數組中不重複元素的個數的詳細內容。更多資訊請關注PHP中文網其他相關文章!