En PHP, la méthode de tri la plus rapide pour convertir les valeurs des clés de tableau est : array_flip() : 0,00192 secondes array_combine() : 0,00506 secondes array_map() : 0,01369 secondes foreach() + array_keys() : 0,01332 secondes boucle personnalisée : 0,00600 secondes
Concours de vitesse de conversion des valeurs clés des tableaux PHP
Il est crucial de traiter les tableaux et de convertir efficacement les valeurs clés en PHP. Cet article organisera une compétition de vitesse entre plusieurs méthodes courantes de conversion clé-valeur et fournira des cas pratiques pour vous aider à comprendre leurs performances.
Environnement de test
Méthodes
Nous comparerons les méthodes suivantes :
array_flip()
array_flip()
array_combine()
array_map()
foreach()
和 array_keys()
实战案例
$arr = range(1, 1000000); // 使用 array_flip() $start = microtime(true); $flipped = array_flip($arr); $end = microtime(true); $time_array_flip = $end - $start; // 使用 array_combine() $keys = range('a', 'z'); $start = microtime(true); $combined = array_combine($keys, $arr); $end = microtime(true); $time_array_combine = $end - $start; // 使用 array_map() $start = microtime(true); $mapped = array_map(function($x) { return [$x, $x]; }, $arr); $end = microtime(true); $time_array_map = $end - $start; // 使用 foreach() 和 array_keys() $start = microtime(true); $flipped = []; $keys = array_keys($arr); foreach ($keys as $key) { $flipped[$key] = $arr[$key]; } $end = microtime(true); $time_foreach = $end - $start; // 使用自定义循环 $start = microtime(true); $flipped = []; for ($i = 0; $i < count($arr); $i++) { $flipped[$arr[$i]] = $arr[$i]; } $end = microtime(true); $time_custom = $end - $start; // 显示结果 echo "array_flip(): $time_array_flip s\n"; echo "array_combine(): $time_array_combine s\n"; echo "array_map(): $time_array_map s\n"; echo "foreach() + array_keys(): $time_foreach s\n"; echo "自定义循环: $time_custom s\n";
结果
方法 | 时间(秒) |
---|---|
array_flip() | 0.00192 |
array_combine() | 0.00506 |
array_map() | 0.01369 |
foreach() + array_keys() | 0.01332 |
自定义循环 | 0.00600 |
结论
根据我们的测试,array_flip()
是转换数组键值的最快方法,而 array_map()
和 foreach()
+ array_keys()
也表现不错。对于大型数组,array_flip()
array_combine()
🎜🎜array_map()
🎜🎜foreach()
et array_keys()
🎜🎜 depuis Définir une boucle🎜🎜🎜🎜Cas pratique🎜🎜rrreee🎜🎜Résultat🎜🎜Méthode | Temps (secondes) |
---|---|
array_flip() | 0.00192 |
array_combine() | 0.00506 td > |
array_map() | 0.01369 |
foreach() + array_keys() | 0.01332 |
Boucle personnalisée | 0.00600 |
array_flip()
est le moyen le plus rapide de convertir les valeurs de clé de tableau, tandis que array_map()
et foreach()
+ array_keys ()
fonctionne également bien. Pour les grands tableaux, array_flip()
est votre meilleur choix car il offre les performances et l'efficacité les plus élevées. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!