ホームページ > バックエンド開発 > PHPの問題 > PHPで配列要素を削除する関数は何ですか?

PHPで配列要素を削除する関数は何ですか?

王林
リリース: 2023-03-06 11:22:01
オリジナル
3972 人が閲覧しました

php で配列要素を削除する関数は、1. unset() 関数、2. array_splice() 関数、3. array_diff() 関数、4. array_diff_key() 関数です。

PHPで配列要素を削除する関数は何ですか?

具体的な方法:

(推奨チュートリアル: mysql チュートリアル)

要素を削除します。元のインデックスを変更しないでください。

unset 関数を使用します。例は次のとおりです。

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  unset($array[1]);
        //↑ 你想删除的key
?>
ログイン後にコピー

出力:

Array (
    [0] => a
    [2] => c
)
ログイン後にコピー

unset を使用しても、元のインデックスは変更されません。配列の。

インデックスを再配置する場合 (インデックスが 0 から始まり連続するように)、array_values 関数を使用できます。

$array = array_values($array);
ログイン後にコピー

Output

array(2) {
 [0]=>
 string(1) "a"
 [1]=>
 string(1) "c"
}
ログイン後にコピー

インデックスを保持せずに要素を削除します

array_splice 関数を使用します。例は次のとおりです:

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  array_splice($array, 1, 1);
            //↑ 你想删除的元素的Offset
?>
ログイン後にコピー

出力:

Array (
    [0] => a
    [1] => c
)
ログイン後にコピー

複数の要素を値で削除し、保持しますインデックス

array_diff 関数を使用します。例は次のとおりです:

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  $array = array_diff($array, ["a", "c"]);
               //└────────┘→ 你想删除的数组元素值values
?>
ログイン後にコピー

出力:

Array (
    [1] => b
)
ログイン後にコピー
ログイン後にコピー

unset と同様に、array_diff もインデックスを保持します。

複数の要素をキーで削除し、インデックスを保持します

array_diff_key 関数を使用します。例は次のとおりです。

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  $array = array_diff_key($array, [0 => "xy", "2" => "xy"]);
                  //↑      ↑ 你想删除的数组键keys
?>
ログイン後にコピー

出力:

Array (
    [1] => b
)
ログイン後にコピー
ログイン後にコピー

次と同様設定を解除すると、array_diff_key もインデックスを保持します。

関連する推奨事項: php トレーニング

以上がPHPで配列要素を削除する関数は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート