PHP では、配列キー値の交換は array_flip() 関数を通じて実現できます。大規模な配列の場合、手動ループによりパフォーマンスが向上する可能性があります。実際のケースでは、手動ループの最適化により、ユーザー ID をユーザー名にマッピングする配列変換速度が大幅に向上し、クエリ速度が高速化されます。
PHP では、配列のキーと値の交換は一般的な操作です。配列のキーと値を交換します。
標準関数
PHP には、これを行うための array_flip()
という標準関数が用意されています。
$arr = ['a' => 1, 'b' => 2, 'c' => 3]; $flipped = array_flip($arr); print_r($flipped); // 输出:['1' => 'a', '2' => 'b', '3' => 'c']
Manualループ
大きな配列の場合、array_flip()
のパフォーマンスが低下する可能性があります。この場合、手動ループを使用して効率を向上できます。
$flipped = []; foreach ($arr as $key => $value) { $flipped[$value] = $key; }
実用的なケース
次は、配列キー値を最適化する方法を示す実際の例です。交換:
ユーザー ID をユーザー名にマップする数百万の要素を含む大規模な配列があるとします。クエリの速度を向上させるために、配列をキーとしてユーザー名、値としてユーザー ID を持つ配列に変換したいと考えています。
未使用の最適化
$arr = ['id1' => 'user1', 'id2' => 'user2', /* ...数百万个元素 */]; $flipped = array_flip($arr);
手動ループ最適化の使用
$flipped = []; foreach ($arr as $id => $username) { $flipped[$username] = $id; }
手動ループ最適化を使用すると、Key-大規模な配列の値スワップのパフォーマンスが向上し、クエリが高速化されます。
以上がPHP 配列のキーと値の交換: 特定のデータセットに基づいたパフォーマンスの最適化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。