PHP の array_flip() 関数は、キーと値の交換タスクでは PHP よりも優れたパフォーマンスを発揮しますが、C、JavaScript、Python には遅れます。具体的なベンチマーク結果は次のとおりです。C は 0.000025 秒、JavaScript は 0.000029 秒、Python は 0.000032 秒、PHP は 0.000047 秒かかりました。
#PHP 配列キー値の交換: 他のプログラミング言語とのパフォーマンスの比較
はじめに #配列のキーと値の交換は、多くのプログラミング言語で一般的な操作であり、配列のキーと値を交換することを伴います。 PHP では、
array_flip() 関数を使用してこれを簡単に行うことができます。ただし、パフォーマンスについて話すときは、他の一般的なプログラミング言語と比較することが役立ちます。 #PHP
$array = ['a' => 1, 'b' => 2, 'c' => 3]; $flipped = array_flip($array);その他のプログラミング言語
Python
array = {'a': 1, 'b': 2, 'c': 3} flipped = {v: k for k, v in array.items()}JavaScript
const array = {a: 1, b: 2, c: 3}; const flipped = Object.fromEntries(Object.entries(array).map(([k, v]) => [v, k]));C (std::unowned_map を使用)
#include <unordered_map> int main() { std::unordered_map<std::string, int> array = {{"a", 1}, {"b", 2}, {"c", 3}}; std::unordered_map<int, std::string> flipped; for (auto const& [key, value] : array) { flipped[value] = key; } return 0; }実用的なケース
次のように仮定します。次のデータを含む JSON ファイルがあります:
{ "name": "John Doe", "age": 30, "city": "New York" }キー値を交換するには、次のコードを使用できます:
$json = json_decode($jsonString, true); $flipped = array_flip($json); var_dump($flipped);出力:
array(3) { ["John Doe"]=> string(3) "name" [30]=> string(3) "age" ["New York"]=> string(4) "city" }
Performanceテスト
さまざまな言語のパフォーマンスを比較するには、ベンチマーク フレームワークを使用できます。以下は、PHPBench を使用して実行されたベンチマーク テストの結果です:
Python | |
#JavaScript | |
C | |
##結果からわかるように、入力が小さい場合、Cパフォーマンスが最も優れた言語であり、次に JavaScript と Python が続きます。このテストでは、PHP のパフォーマンスがわずかに低下しました。 |
以上がPHP 配列のキーと値の交換: 他のプログラミング言語とのパフォーマンスの比較の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。