您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“php如何判斷數(shù)組是否有相同的元素”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“php如何判斷數(shù)組是否有相同的元素”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
判斷步驟:1、用array_unique()去除數(shù)組中的重復(fù)值,語(yǔ)法“array_unique(原數(shù)組)”,會(huì)返回一個(gè)去重?cái)?shù)組;2、用count()分別獲取原數(shù)組和去重?cái)?shù)組的數(shù)組長(zhǎng)度,并判斷兩個(gè)數(shù)組長(zhǎng)度是否相等,語(yǔ)法“count(原數(shù)組)==count(去重?cái)?shù)組)”,如果兩個(gè)數(shù)組長(zhǎng)度相等,則數(shù)組里沒有相同元素,反之則數(shù)組里有相同的元素。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
php判斷數(shù)組是否有相同的元素,就是判斷數(shù)組元素是否有重復(fù)值。
在php中,可以使用array_unique()和count()函數(shù)來進(jìn)行判斷。
判斷步驟:
步驟1:使用array_unique()函數(shù)去除數(shù)組中的重復(fù)值
array_unique(array,sortingtype)
參數(shù) | 描述 |
---|---|
array | 必需。規(guī)定數(shù)組。 |
sortingtype | 可選。規(guī)定排序類型??赡艿闹担?ul class=" list-paddingleft-2"> SORT_STRING - 默認(rèn)。把每一項(xiàng)作為字符串來處理。 SORT_REGULAR - 把每一項(xiàng)按常規(guī)順序排列(Standard ASCII,不改變類型)。 SORT_NUMERIC - 把每一項(xiàng)作為數(shù)字來處理。 SORT_LOCALE_STRING - 把每一項(xiàng)作為字符串來處理,基于當(dāng)前區(qū)域設(shè)置(可通過 setlocale() 進(jìn)行更改)。 |
返回值:返回過濾后的去重?cái)?shù)組。
<?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 "去重后的數(shù)組:"; var_dump($res); ?>
步驟2:使用count()函數(shù)獲取原數(shù)組和去重?cái)?shù)組的長(zhǎng)度,并判斷兩個(gè)數(shù)組長(zhǎng)度是否相等
count() 函數(shù)可以統(tǒng)計(jì)出數(shù)組里所有元素的數(shù)量,即獲取數(shù)組長(zhǎng)度。
如果兩個(gè)數(shù)組長(zhǎng)度相等,則數(shù)組里沒有重復(fù)值
如果兩個(gè)數(shù)組長(zhǎng)度不相等,則表示有元素被去除了,即數(shù)組里有重復(fù)值。
<?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 "去重后的數(shù)組:"; var_dump($res); $len1=count($arr); $len2=count($res); echo "原數(shù)組的長(zhǎng)度為: $len1 <br>"; echo "去重?cái)?shù)組的長(zhǎng)度為: $len2 <br><br>"; if($len1==$len2){ echo "兩數(shù)組長(zhǎng)度相等,數(shù)組里有沒有相同的元素"; }else{ echo "兩數(shù)組長(zhǎng)度不相等,數(shù)組里有相同的元素"; } ?>
說明:
count() 函數(shù)可以統(tǒng)計(jì)出數(shù)組里所有元素的數(shù)量,或?qū)ο笾械膶傩詡€(gè)數(shù),其語(yǔ)法格式如下:
count($array , $mode )
參數(shù)說明如下:
$array:為待統(tǒng)計(jì)的數(shù)組或?qū)ο螅?/p>
$mode:為可選參數(shù),可以省略。
如果省略 $mode 參數(shù),或者將其設(shè)置為 COUNT_NORMAL 或者 0,count() 函數(shù)將不檢測(cè)多維數(shù)組;
如果 $mode 設(shè)置為 COUNT_RECURSIVE 或者 1,count() 函數(shù)將遞歸計(jì)算數(shù)組中元素的個(gè)數(shù),對(duì)于計(jì)算多維數(shù)組的元素個(gè)數(shù)尤為有用。
提示:如果 $array 既不是數(shù)組,也不是對(duì)象,count() 函數(shù)將返回 1;如果 $array 等于 NULL,則 count() 函數(shù)返回 0。
sizeof() 函數(shù)是 count() 函數(shù)的別名,也就是所 sizeof() 函數(shù)的功能及使用方法與 count() 函數(shù)完全相同。
讀到這里,這篇“php如何判斷數(shù)組是否有相同的元素”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。