php 陣列怎麼清除相同數字

PHPz
發布: 2023-04-27 10:31:10
原創
395 人瀏覽過

在 PHP 中,我們常常需要對陣列進行各種操作,例如尋找、排序,以及去重。其中去重操作就是清除陣列中重複的元素。在實際開發過程中,我們經常會遇到需要清除相同數字的情況,本文介紹如何使用 PHP 陣列去除重複數字。

一、array_unique() 函數

PHP 中有一個 array_unique() 函數,該函數可以用來移除陣列中的重複值,並傳回一個新的陣列。此函數使用的是值比較,即只有值相等的元素才被認為是重複的。

下面是使用array_unique() 函數去重的範例程式碼:

登入後複製

執行以上程式碼,可以得到輸出結果:

Array ( [0] => 1 [2] => 2 [3] => 3 [4] => 4 [6] => 5 )
登入後複製

我們可以看到,重複的數字已經被清除,只剩下了不同的數字。

二、使用迴圈遍歷去重

除了使用 array_unique() 函數,我們還可以使用迴圈遍歷的方法去重。具體實作如下:

登入後複製

以上程式碼中,我們使用了一個空數組 $new_array 儲存不重複的數字。然後使用 foreach 循環遍歷原始數組 $array,如果當前元素不在 $new_array 中,則將當前元素加入 $new_array 數組中。

執行上述程式碼後,可以得到與前面相同的輸出結果:

Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
登入後複製

三、效能比較

上面提到了兩種方法去重,那麼它們的效能如何呢?我們來比較一下。

為了比較兩種方法的效能,我們定義了一個包含 100,000 個隨機數的數組,然後使用兩種方法分別對它進行去重,並統計執行時間。程式碼如下:

登入後複製

執行以上程式碼,可以得到如下輸出結果:

使用 array_unique() 函数执行时间:0.011376142501831 秒 使用循环遍历执行时间:15.46102309227 秒
登入後複製

我們可以看到,使用 array_unique() 函數的執行效率要高得多。

四、總結

在實際開發中,為了提高程式的執行效率,我們應盡量使用 PHP 提供的內建函數,而不是自己寫迴圈等程式碼處理。對於移除陣列中相同數字的問題,使用 PHP 內建的 array_unique() 函數是最簡單、最有效率的方法,而使用迴圈遍歷進行去重則會浪費大量的時間和資源。

以上是php 陣列怎麼清除相同數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!