判斷步驟:1、用array_unique()移除數組中的重複值,語法“array_unique(原始數組)”,會傳回一個去重數組;2、用count()分別取得原始數組和去重數組的數組長度,語法“count(數組)”;3、判斷兩個數組長度是否相等,“長度1 == 長度2”,如果兩個數組長度相等,則數組內元素不重複,反之則數組內元素重複。
本教學操作環境:windows7系統、PHP8版、DELL G3電腦
判斷陣列內元素重不重複想法:
先移除陣列中的重複值,取得去重後的陣列
然後取得原始陣列和去重數組的長度
最後判斷兩個陣列長度是否相等
在PHP中,可以使用array_unique()、count()函數和「= =”運算符來實現。
判斷步驟:
步驟1:使用array_unique()函數移除陣列中的重複值
<?php header('content-type:text/html;charset=utf-8'); $arr=array(3,4,2,3,6,4,7,2,8,9,1); var_dump($arr); $res=array_unique($arr); echo "去重后的数组:"; var_dump($res); ?>
步驟2:使用count()函數取得原始數組和去重數組的長度
<?php header('content-type:text/html;charset=utf-8'); $arr=array(3,4,2,3,6,4,7,2,8,9,1); var_dump($arr); $res=array_unique($arr); echo "去重后的数组:"; var_dump($res); $len1=count($arr); $len2=count($res); echo "原数组的长度为: $len1 <br>"; echo "去重数组的长度为: $len2 <br><br>"; ?>
##步驟3:使用「==」運算子判斷兩個陣列長度是否相等
#如果兩個數組長度相等,則數組裡沒有重複值
如果兩個數組長度不相等,則表示有元素被去除了,即數組裡有重複值。<?php header('content-type:text/html;charset=utf-8'); $arr=array(3,4,2,3,6,4,7,2,8,9,1); var_dump($arr); $res=array_unique($arr); echo "去重后的数组:"; var_dump($res); $len1=count($arr); $len2=count($res); echo "原数组的长度为: $len1 <br>"; echo "去重数组的长度为: $len2 <br><br>"; if($len1==$len2){ echo "两数组长度相等,数组里有没有相同的元素"; }else{ echo "两数组长度不相等,数组里有相同的元素"; } ?>
說明:
array_unique()函數
array_unique() 函數用來移除陣列中重複的值。如果兩個或更多個數組值相同,只保留第一個值,其他的值被移除。
array array_unique ( array array )
count() 函數可以統計出數組裡所有元素的數量,或物件中的屬性個數,其語法格式如下:
count($array , $mode )
參數說明如下:
$mode:為可選參數,可以省略。 ######如果省略$mode 參數,或設定為COUNT_NORMAL 或0,count() 函數將不偵測多維數組;######如果$mode 設為COUNT_RECURSIVE 或1,count() 函數將遞歸計算數組中元素的個數,對於計算多維數組的元素個數特別有用。 ##################提示:如果$array 既不是數組,也不是對象,count() 函數將返回1;如果$array 等於NULL,則count() 函數返回0。 #########sizeof() 函數是 count() 函數的別名,也就是所 sizeof() 函數的功能及使用方法與 count() 函數完全相同。 ######推薦學習:《###PHP影片教學###》###以上是php數組內元素不重複怎麼判斷的詳細內容。更多資訊請關注PHP中文網其他相關文章!