[翻訳] PHP 配列の重複排除を実現する高速モード
Jun 13, 2016 pm 12:28 PM
array
flip
unique
[翻訳] PHP の Array Unique 関数のより高速な代替手段
概要
PHP の Array Unique 関数を使用すると、配列を渡し、重複した値を削除して一意の値を持つ配列を返すことができます。この関数はほとんどの場合にうまく機能します。ただし、大きな配列で
関数を使用しようとすると、実行が遅くなります。array_unique()
一意の配列を作成するために array_unique()
関数を使用する代わりに、より優れた高速な関数
関数と同じ結果が得られます。 array_flip()
array_unique()
PHP 配列の重複排除をより迅速に実装する方法 array_unique()
/* 创建一个包含重复值的,一共四个元素的数组 */$array = array('green','blue','orange','blue');/* 翻转数组,你将会得到唯一键值的数组 array('green'=>0,'blue'=>1,'orange'=>2); */$array = array_flip($array);/* 然后再翻转一次,将键和值重新放置,然后得到数组:array(0=>'green',1=>'blue',2=>'orange'); */$array = array_flip($array);
ログイン後にコピー
を取得できます。場合によっては、これは問題になりませんが、配列キーを番号順に保つ必要がある場合は、1 つまたは 2 つの方法を使用して、キー値の順序が崩れる問題を解決できます。
配列のキーを修復するには、array_merge を使用しますarray(0=>’A’,2=>’B’,5=>’C’);
$array = array('green','blue','orange','blue');$array = array_flip($array);$array = array_flip($array);/* 使用array_merge()函数修复键值*/$array = array_merge($array);
ログイン後にコピー
関数と組み合わせることもできます (この関数は反転した値を返します)。その後、配列の値を反転すると、キーが順番に作成されます。
array_merge()
array_keys()
$array = array('green','blue','orange','blue');$array = array_flip($array);/* 跟第一个例子一样,但是现在我们先提取数组的键值 */$array = array_keys($array);
ログイン後にコピー
大規模な配列で array_unique 関数を使用する場合と比較して、効果的なパフォーマンスの向上が得られます。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7311
9


Java チュートリアル
1624
14


CakePHP チュートリアル
1346
46


Laravel チュートリアル
1259
25


PHP チュートリアル
1207
29



PHPのarray_merge_recursive()関数を使用するシンプルで明確な方法

PHP で array_combine 関数を使用して 2 つの配列を結合して連想配列にする方法

Huawei nova Flipは120万回折りたためる!折りたたみ式スクリーンの限界は何ですか?

Java での ArrayStoreException の一般的な原因は何ですか?
