第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

從PHP數(shù)組中刪除元素

從PHP數(shù)組中刪除元素

PHP
海綿寶寶撒 2019-05-31 11:24:31
從PHP數(shù)組中刪除元素是否有一種使用PHP從數(shù)組中刪除元素的簡(jiǎn)單方法,例如foreach ($array)不再包括那個(gè)元素了?我以為把它設(shè)置為null可以做到,但顯然不起作用。
查看完整描述

4 回答

?
心有法竹

TA貢獻(xiàn)1866條經(jīng)驗(yàn) 獲得超5個(gè)贊

刪除數(shù)組元素有不同的方法,其中一些對(duì)某些特定任務(wù)更有用,而另一些則更有用。

刪除一個(gè)數(shù)組元素

如果只想刪除一個(gè)數(shù)組元素,可以使用\unset()或者另一種選擇\array_splice().

另外,如果您有這個(gè)值,并且不知道要?jiǎng)h除可以使用的元素的鍵\array_search()去拿鑰匙。

\unset()方法

請(qǐng)注意,當(dāng)您使用\unset()數(shù)組鍵不會(huì)更改/重新索引。如果您想重新索引您可以使用的鍵\array_values()\unset()它將從0開始將所有鍵轉(zhuǎn)換為數(shù)字枚舉鍵。

電碼

<?php

    $array = [0 => "a", 1 => "b", 2 => "c"];
    \unset($array[1]);
                //↑ Key which you want to delete?>

輸出量

[
    [0] => a    [2] => c]

\array_splice()方法

如果你用\array_splice()鍵將自動(dòng)重新編入索引,但關(guān)聯(lián)鍵不會(huì)更改,而不是\array_values()將所有鍵轉(zhuǎn)換為數(shù)字鍵。

\array_splice()需要偏移,而不是鑰匙!作為第二個(gè)參數(shù)。

電碼

<?php

    $array = [0 => "a", 1 => "b", 2 => "c"];
    \array_splice($array, 1, 1);
                        //↑ Offset which you want to delete?>

輸出量

[
    [0] => a    [1] => c]

array_splice()\unset()通過引用獲取數(shù)組,這意味著您不希望將這些函數(shù)的返回值分配給數(shù)組。

刪除多個(gè)數(shù)組元素

如果要?jiǎng)h除多個(gè)數(shù)組元素而不想調(diào)用\unset()\array_splice()您可以多次使用這些函數(shù)。\array_diff()\array_diff_key()取決于是否知道要?jiǎng)h除的元素的值或鍵。

\array_diff()方法

如果您知道要?jiǎng)h除的數(shù)組元素的值,則可以使用\array_diff()。和以前一樣\unset()它不會(huì)更改/重新索引數(shù)組的鍵。

電碼

<?php

    $array = [0 => "a", 1 => "b", 2 => "c"];
    $array = \array_diff($array, ["a", "c"]);
                               //└────────┘→ Array values which you want to delete?>

輸出量

[
    [1] => b]

\array_diff_key()方法

如果您知道要?jiǎng)h除的元素的鍵,則要使用\array_diff_key()。在這里,您必須確保將鍵作為第二個(gè)參數(shù)中的鍵傳遞,而不是作為值傳遞。否則,必須將數(shù)組翻轉(zhuǎn)為\array_flip()。在這里,鍵不會(huì)更改/重新索引。

電碼

<?php

    $array = [0 => "a", 1 => "b", 2 => "c"];
    $array = \array_diff_key($array, [0 => "xy", "2" => "xy"]);
                                    //↑           ↑ Array keys which you want to delete?>

輸出量

[
    [1] => b]

如果你想用\unset()\array_splice()若要?jiǎng)h除具有相同值的多個(gè)元素,請(qǐng)使用\array_keys()若要獲取特定值的所有鍵,然后刪除所有元素,請(qǐng)執(zhí)行以下操作。


查看完整回答
反對(duì) 回復(fù) 2019-05-31
?
白衣染霜花

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超10個(gè)贊

應(yīng)該指出,unset()將使索引保持不變,這是在使用字符串索引(數(shù)組作為哈希表)時(shí)所期望的,但在處理整數(shù)索引數(shù)組時(shí)可能會(huì)非常令人驚訝:

$array = array(0, 1, 2, 3);unset($array[2]);var_dump($array);/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [3]=>
  int(3)
} */$array = array(0, 1, 2, 3);array_splice($array, 2, 1);var_dump($array);/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(3)
} */

所以array_splice()如果您希望將整數(shù)鍵規(guī)范化,則可以使用。另一個(gè)選項(xiàng)是使用array_values()unset():

$array = array(0, 1, 2, 3);unset($array[2]);$array = array_values($array);var_dump($array);/* array(3) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(3)
} */


查看完整回答
反對(duì) 回復(fù) 2019-05-31
?
HUH函數(shù)

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊

 // Our initial array
  $arr = array("blue", "green", "red", "yellow", "green", "orange", "yellow", "indigo", "red");
  print_r($arr);

  // Remove the elements who's values are yellow or red
  $arr = array_diff($arr, array("yellow", "red"));
  print_r($arr);

這是上面代碼的輸出:

Array(
    [0] => blue    [1] => green    [2] => red    [3] => yellow    [4] => green    [5] => orange    [6] => yellow    [7] => indigo
        [8] => red)Array(
    [0] => blue    [1] => green    [4] => green    [5] => orange    [7] => indigo)

現(xiàn)在,Array_value()將很好地重新索引一個(gè)數(shù)字?jǐn)?shù)組,但它將從數(shù)組中刪除所有鍵字符串,并將它們替換為數(shù)字。如果需要保留鍵名(字符串),或者如果所有鍵都是數(shù)字的,則重新索引數(shù)組,請(qǐng)使用Array_Merge():

$arr = array_merge(array_diff($arr, array("yellow", "red")));print_r($arr);

產(chǎn)出

Array(
    [0] => blue    [1] => green    [2] => green    [3] => orange    [4] => indigo)


查看完整回答
反對(duì) 回復(fù) 2019-05-31
?
偶然的你

TA貢獻(xiàn)1841條經(jīng)驗(yàn) 獲得超3個(gè)贊

$key = array_search($needle, $array);if ($key !== false) {
    unset($array[$key]);}


查看完整回答
反對(duì) 回復(fù) 2019-05-31
  • 4 回答
  • 0 關(guān)注
  • 1095 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)