首頁 >後端開發 >PHP問題 >php數組去掉相同的下標(三種方法)

php數組去掉相同的下標(三種方法)

PHPz
PHPz原創
2023-04-05 14:34:58588瀏覽

在PHP程式設計中,我們常常會遇到需要將陣列中的相同下標去掉的情況,但不知道該如何實作。在本文中,我們將分享一些實用的方法來去除PHP數組中相同的下標。

  1. 使用array_unique()函數
    array_unique()函數是PHP內建函數之一,可以用來去除陣列中的相同元素。但它不能直接用來去除相同的下標。所以,我們可以透過將鍵名和鍵值互換的方式,再使用array_unique()來去除相同的鍵名。

範例程式碼:

<?php
$arr = array("a"=>1, "b"=>2, "c"=>2, "d"=>1);
$new_arr = array_unique(array_flip($arr));
print_r($new_arr);
?>

執行結果:

Array
(
    [1] => a
    [2] => b
)
  1. 使用array_keys()函數和array_flip()函數
    array_keys()函數可以傳回數組中所有的鍵名,而array_flip()函數可以將數組中的鍵名和值互換。因此,結合使用這兩個函數,我們可以實現刪除相同鍵名的功能。

範例程式碼:

<?php
$arr = array("a"=>1, "b"=>2, "c"=>2, "d"=>1);
$new_arr = array_flip(array_keys(array_flip($arr)));
print_r($new_arr);
?>

執行結果:

Array
(
    [a] => 1
    [b] => 2
)
  1. 使用foreach()循環
    使用foreach()循環遍歷數組,將每個元素的鍵名存入一個新的數組中,判斷當前鍵名是否已經存在於新的數組中,若不存在,則將該鍵名和鍵值添加到新的數組中。

範例程式碼:

<?php
$arr = array("a"=>1, "b"=>2, "c"=>2, "d"=>1);
$new_arr = array();
foreach($arr as $key=>$value){
    if(!in_array($key,$new_arr)){
        $new_arr[$key] = $value;
    }
}
print_r($new_arr);
?>

執行結果:

Array
(
    [a] => 1
    [b] => 2
)

綜上所述,本文介紹了三種移除PHP陣列中相同下標的方法。使用的場景和需要達到的效果不同,可以根據實際情況選擇對應的方法。

以上是php數組去掉相同的下標(三種方法)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn