提取步驟:1、利用array_count_values()函數統計數組中元素的出現次數,語法“array_count_values(原數組)”,會返回一個關聯數組,其元素的鍵名是原數組的值,鍵值是該值在原數組中出現的次數;2、利用array_keys()函數獲取出現次數為1的元素,即提取關聯數組中鍵值為1的元素的鍵名即可,語法“array_keys(關聯數組,1)”。
本教程操作環境:windows7系統、PHP8.1版、DELL G3電腦
在PHP中,可以利用array_count_values()函數和array_keys()函數來提取數組中不重復的值。
實現步驟:
步驟1:利用array_count_values()函數統計數組中元素的出現次數
array_count_values() 函數可以統計數組中所有值出現的次數;會返回一個關聯數組,其元素的鍵名是原數組的值,鍵值是該值在原數組中出現的次數
。
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1,"A","Cat",2,"Dog","A",3,4,5,5,3,1); echo "原數組"; var_dump($arr); $con=array_count_values($arr); echo "各數組元素的出現次數:"; var_dump($con); ?>
步驟2:利用array_keys()函數提取數組中不重復的值
出現次數為1的值,就是不重復值。
只需要使用array_keys()函數在返回的關聯數組中,獲取鍵值為1元素對應的鍵名即可。
<?php header('content-type:text/html;charset=utf-8'); $arr=array(1,"A","Cat",2,"Dog","A",3,4,5,5,3,1); echo "原數組"; var_dump($arr); $con=array_count_values($arr); echo "各數組元素的出現次數:"; var_dump($con); $res=array_keys($con,1); echo "數組中的不重復值:"; var_dump($res); ?>
說明:
array_key() 函數可以獲取數組中的部分或所有鍵名
array_keys($array [, $search_value = null [, $strict = false]])
參數說明如下:
- $array:必選參數,為待操作的數組;
- $search_value:可選參數,如果參數為空,則函數會返回數組中的所有鍵名,如果指定了該參數,則函數就只會返回值為 $search_value 的鍵名;
- $strict:可選參數,判斷在搜索的時候是否使用嚴格模式,$strict 默認為 false,也就是非嚴格模式,在搜索時只比較類型,不比較類型,若將 $strict 設置為 true,也就是嚴格模式,在搜索時同時比較值和類型,等價于
===
。
array_keys() 函數會以數組形式返回得到的數組鍵名。
推薦學習:《PHP視頻教程》