PHP は array_flip() 関数を使用して配列内の重複要素を削除します

黄舟
リリース: 2023-03-03 19:08:01
オリジナル
1434 人が閲覧しました

PHP には、配列内の重複要素を削除する関数 array_unique() がありますが、これは最も効率的な方法ではありません。array_flip() 関数を使用すると、array_unique() よりも約 5 倍高速になります。

関数形式:
array array_flip (array trans) //array_flip -- 配列内のキーと値を交換します

メソッドは次のとおりです:
$arr = array(…………);//Assume要素が 10,000 個あり、要素が繰り返される配列です。
$arr = array_flip(array_flip($arr)); //これにより、重複した要素を削除できます。
具体的に何が起こっているのですか? array_flip() の関数を見てみましょう: array_flip() は、次のように配列の各要素のキーと値を交換するために使用されます:
$arr1 = array ("age" => 30, "name" => ; " php 自習ネットワーク");
$arr2 = array_flip($arr1); //$arr2 は array(30 => "年齢", "php 自習ネットワーク" => "名前");
PHP の配列では、異なる要素が同じ値を取ることは許可されますが、同じキー名が異なる要素で使用されることは許可されません。例:
$arr1 = array ("age" => 30, "name" => "php 自習ネットワーク ", "年齢" => 20 は "年齢" => 30 に置き換えられます
$arr1 = array ("name" => self-study network", "age" = > 45);
ここでは $arr1 と $arr2 は等しいです。
これで、array_flip(array_flip($arr)) が配列内の重複要素を削除できる理由がわかります。まず、$arr の値がキー名になります。これは、値がキー名になった後、重複したキー名になり、PHP エンジンは重複したキー名を削除し、最後のキー名のみを保持します。 1つ。 。例:
$arr1 = array ("年齢" => 30, "名前" => "php 自習ネットワーク", "年齢" => 20); //$ arr1 は array("php 自習ネットワーク" => "名前", 20 => "年齢") になります
//$arr1 のキー名と値を復元します:
$arr1 = array_flip($ arr1 );
上記のコードはより簡潔に記述されています: $arr1 = array_flip(array_flip($arr1));

上記は、PHP が配列内の重複要素を削除する方法を示しています。 PHP 中国語 Web サイト (m.sbmmt.com) にご注意ください。


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!