PHPで配列内のキーと値のペアを削除する方法(2つの方法)

PHPz
リリース: 2023-04-18 14:17:29
オリジナル
952 人が閲覧しました

PHP では、配列は非常に実用的なデータ構造であり、大量のデータを保存および操作するためによく使用されます。配列操作を実行するとき、配列のクリーンさと可読性を維持するために、特定のキーと値のペアを削除することが必要になる場合があります。この記事では、配列のキーと値のペアを削除する 2 つの一般的な方法を紹介します。

方法 1: unset 関数

unset 関数は、変数または配列要素を削除するために使用される PHP の関数で、配列内の特定のキーと値のペアの存在を完全に削除できます。デリート効果を達成します。以下は、unset 関数を使用して配列のキーと値のペアを削除するサンプル コードです。

<?php
// 创建一个关联数组
$fruit = array(
    &#39;apple&#39;  => '苹果',
    'banana' => '香蕉',
    'orange' => '橙子',
    'pear'   => '梨子'
);

// 删除键名为"orange"的键值对
unset($fruit['orange']);

// 打印输出数组中的键值对
print_r($fruit);
?>
ログイン後にコピー

上記のコードでは、最初に $fruit という名前の連想配列を作成し、4 セットのキーと値のペアを追加しました。次に、unset 関数を使用して、キー名が「orange」のキーと値のペアを削除します。最後に、更新された $fruit 配列が print_r 関数を使用して出力されます。

出力結果は以下の通りです。

Array
(
    [apple] => 苹果
    [banana] => 香蕉
    [pear] => 梨子
)
ログイン後にコピー

出力結果からわかるように、キー名「orange」のキーと値のペアは削除されており、 $fruit 配列には 3 つが残ります。キーと値のペアのグループ データ。

方法 2: array_diff_key 関数

array_diff_key 関数は、複数の配列の違いを比較するために使用される PHP の関数です。2 つ以上の配列をパラメータとして受け取り、これらの配列間の違いを返します。異なるキー名で構成される新しい配列この関数を空の配列と比較すると、配列のキーと値のペアを削除する効果が得られます。以下は、array_diff_key 関数を使用して配列のキーと値のペアを削除するサンプル コードです。

<?php
// 创建一个关联数组
$colors = array(
    &#39;red&#39;   => '红色',
    'green' => '绿色',
    'blue'  => '蓝色',
    'purple'=> '紫色'
);

// 删除键名为"blue"的键值对
$colors = array_diff_key($colors, array('blue' => ''));

// 打印输出数组中的键值对
print_r($colors);
?>
ログイン後にコピー

上記のコードでは、最初に $colors という名前の連想配列を作成し、4 セットのキーと値のペアを追加しました。次に、array_diff_key 関数を使用して、$colors 配列と、キー名が "blue" でキー値が空の空の配列との差を比較し、比較結果を $colors 配列に上書きします。最後に、更新された $colors 配列が print_r 関数を使用して出力されます。

出力結果は以下の通りです。

Array
(
    [red] => 红色
    [green] => 绿色
    [purple] => 紫色
)
ログイン後にコピー

出力結果からわかるように、キー名「blue」のキーと値のペアが削除され、 $colors 配列には 3 つが残ります。キーと値のペアのグループ データ。

概要

この記事では、PHP で配列のキーと値のペアを削除する 2 つの一般的な方法、つまり unset 関数を使用する方法と array_diff_key 関数を使用する方法を紹介します。 unset 関数はキーと値のペアを直接削除できますが、array_diff_key 関数は配列の違いを比較することで削除の効果を実現できます。上記 2 つの方法にはそれぞれ一長一短があり、実際の開発ではニーズに応じて柔軟に選択する必要があります。

以上がPHPで配列内のキーと値のペアを削除する方法(2つの方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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