ホームページ >バックエンド開発 >PHPの問題 >PHP 配列から同じ添え字を削除する (3 つの方法)

PHP 配列から同じ添え字を削除する (3 つの方法)

PHPz
PHPzオリジナル
2023-04-05 14:34:58575ブラウズ

PHP プログラミングでは、配列内の同じ添え字を削除する必要があるが、その方法がわからないという状況によく遭遇します。この記事では、PHP で配列から同一の添え字を削除するための実用的な方法をいくつか紹介します。

  1. array_unique() 関数の使用
    array_unique() 関数は、PHP の組み込み関数の 1 つで、配列から同一の要素を削除するために使用できます。ただし、これを直接使用して同一の添字を削除することはできません。したがって、キー名とキー値を交換し、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() 関数は配列内のキー名と値を交換できます。したがって、これら 2 つの機能を併用することで、同じキー名の削除機能を実現できます。

サンプル コード:

<?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() ループを使用して配列を走査します。 each 要素のキー名が新しい配列に格納され、現在のキー名が新しい配列にすでに存在するかどうかが判断され、存在しない場合は、キー名とキーの値が新しい配列に追加されます。

サンプルコード:

<?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 配列内の同じ添え字を削除する 3 つの方法を紹介します。使用するシナリオと達成される効果が異なるため、実際の状況に応じて対応する方法を選択できます。

以上がPHP 配列から同じ添え字を削除する (3 つの方法)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。