php中刪除數組一個元素和從數組中刪除多個元素的方法總結(附代碼)

來源:互聯網
上載者:User
PHP刪除數組中的元素有多種方式,本文就給大家總結幾個php中刪除數組一個元素和從數組中刪除多個元素的方法。那麼,話不多說,讓我們來直接看看本文。

刪除數組中的一個元素

如果你想刪除數組中的一個元素,你可以使用 unset() 或 array_splice() 方法。

如果你知道數組元素的值(value),但不知道鍵(key),你可以使用 array_search() 來擷取鍵(key)。

unset() 方法

注意如果你使用 unset() 方法,它是不會改變其他的鍵(key),如果你想對其他的鍵(key)重新整理排序,可以使用 array_values()。

<?php$array = array(0 => "a", 1 => "b", 2 => "c");unset($array[1]);           //↑ 你要刪除的數組元素值的鍵print_r($array);?>

輸出結果:

Array (    [0] => a    [2] => c)

array_splice() 方法

如果你使用 array_splice() 方法,數組的鍵會自動重建立立索引, 但對關聯性的數組不起作用,需要使用 array_values() 將鍵轉換為數字鍵。

<?php$array = array(0 => "a", 1 => "b", 2 => "c");array_splice($array, 1, 1);                   //↑ Offset which you want to deleteprint_r($array);?>

輸出結果:

Array(    [0] => a    [1] => c)

array_splice() 在釋放數組指定元素上與unset() 函數取到相同作用。

從數組中刪除多個元素

如果你想刪除數組中的多個元素就不能使用嗎 unset() 或 array_splice() 函數了,你需要使用 array_diff() 或 array_diff_key() 方法,使用該方法需要知道要刪除的鍵(key)或值(value)。

array_diff() 方法

如果你知道要刪除的數組元素, 你可以使用 array_diff()。

<?php$array = array(0 => "a", 1 => "b", 2 => "c");$array = array_diff($array, ["a", "c"]);                          //└────────┘→你要刪除的元素print_r($array );?>

輸出結果為:

Array(    [1] => b)

array_diff_key() 方法

如果你知道要刪除的數組元素的鍵(key), 你可以使用 array_diff_key()。你需要在函數的第二個參數的索引值位置輸入要刪除的鍵,值不需要,可隨意。

<?php$array = array(0 => "a", 1 => "b", 2 => "c");$array = array_diff_key($array, [0 => "xy", "2" => "xy"]);                               //↑           ↑ 你要刪除的數組鍵print_r($array);?>

輸出結果為:

Array (    [1] => b)
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.