In PHP sind die Methoden zum Umkehren von Arrays in der Reihenfolge ihrer Leistung von schnell nach langsam: Funktion array_reverse(), manuelle Umkehrung mit for-Schleife, manuelle Umkehrung mit while-Schleife. Wenn die Größe des Testarrays 10.000 beträgt, beträgt die Ausführungszeit der Funktion array_reverse() 0,0010440111160278 Millisekunden, die manuelle Umkehrung mit einer for-Schleife beträgt 0,0014300346374512 Millisekunden und die manuelle Umkehrung mit einer while-Schleife beträgt 0,0014059543609619 Millisekunden.
Leistungsvergleich der PHP-Array-Umkehr: Praktischer Fall
Einführung
Das Umkehren eines Arrays ist eine häufige Programmieraufgabe, bei der die Elemente in einem Array in umgekehrter Reihenfolge angeordnet werden. Es gibt mehrere Möglichkeiten, eine Array-Umkehr in PHP zu erreichen. In diesem Artikel wird die Leistung verschiedener Inversionsmethoden verglichen und ein praktischer Fall zur Veranschaulichung der Ergebnisse bereitgestellt.
Methoden
Wir vergleichen die folgenden Methoden zum Umkehren von Arrays:
array_reverse()
-Funktionarray_reverse()
函数for
循环反转while
循环反转实战案例
我们创建一个包含 10,000 个整数的数组,然后针对每个反转方法测量执行时间。
代码
$array = range(1, 10000); // array_reverse() $start = microtime(true); $reversed_array_array_reverse = array_reverse($array); $end = microtime(true); $time_array_reverse = $end - $start; // 手动反转,使用 `for` 循环 $start = microtime(true); $reversed_array_for = []; for ($i = count($array) - 1; $i >= 0; $i--) { $reversed_array_for[] = $array[$i]; } $end = microtime(true); $time_for = $end - $start; // 手动反转,使用 `while` 循环 $start = microtime(true); $reversed_array_while = []; while (count($array) > 0) { $reversed_array_while[] = array_pop($array); } $end = microtime(true); $time_while = $end - $start; // 输出结果 echo "时间:array_reverse(): " . $time_array_reverse . " 毫秒\n"; echo "时间:手动反转,使用 `for` 循环: " . $time_for . " 毫秒\n"; echo "时间:手动反转,使用 `while` 循环: " . $time_while . " 毫秒\n";
结果
在我们的测试中,array_reverse()
函数的执行速度最快,接下来是手动反转使用 for
循环,然后是手动反转使用 while
循环。以下是被测数组大小为 10,000 的结果:
时间:array_reverse(): 0.0010440111160278 毫秒 时间:手动反转,使用 `for` 循环: 0.0014300346374512 毫秒 时间:手动反转,使用 `while` 循环: 0.0014059543609619 毫秒
结论
对于较小的数组,array_reverse()
函数是数组反转最快的选择。然而,当数组变得更大时,手动反转使用 for
循环可能成为更好的选择。手动反转使用 while
循环通常比使用 for
Manuelle Verwendung von for
Schleifenumkehr li> li>
while
-Schleifeninversion🎜🎜Praktischer Fall🎜🎜🎜Wir erstellen ein Array von 10.000 Ganzzahlen und messen dann die Ausführungszeit für jede Inversionsmethode . 🎜🎜🎜Code: Kehren Sie die Schleife mit einem while
um. Hier sind die Ergebnisse für eine getestete Array-Größe von 10.000: 🎜rrreee🎜🎜Fazit🎜🎜🎜Für kleinere Arrays ist die Funktion array_reverse()
die schnellste Option zur Array-Umkehr. Wenn Arrays jedoch größer werden, ist es möglicherweise eine bessere Option, die Verwendung einer for
-Schleife manuell umzukehren. Die manuelle Umkehrung mithilfe einer while
-Schleife ist im Allgemeinen langsamer als die Verwendung einer for
-Schleife. 🎜Das obige ist der detaillierte Inhalt vonLeistungsvergleich der PHP-Array-Umkehrung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!