Mailinglisten-Archive |
Hi zusammen, > a) ist ca. > doppelt so schnell wie b). > (6ms vs 13ms bei 10000x[] vs 10000x array_push auf meinem Athlon 64 > 3700+, 2GB DDR2 Win2k php 5.2). Hmm. Ich habe hier ein wenig getestet und komme auf folgendes Ergebnis: Bis etwa 50 Durchläufen ist array_push schneller, darüber ist array[] schneller. Allerdings nie im Faktor 2 bei mir. Allerdings hat IMHO der Aufbau des Prüfskriptes großen Einfluß auf das Ergebnis. Ich poste mal mein Testscript, auf daß ihr es mir zerpflücken möget. Um sicher zu sein, habe ich die Reihenfolge der beiden Testschleifen vertauscht, das Ergebnis blieb gleich. hth Tobias <?php /** * * Script zum Messen der Performance: * * array_push() vs. array[] * zum Hinzufügen von array-Einträgen. * * */ require_once 'Benchmark/Iterate.php'; $benchmark = new Benchmark_Iterate; $aTest = array(); $aTest2 = array(); $timer = new Benchmark_Timer(); $timer->start(); $z = 10; // abwechselnd auf 1,10,100,1000,10000 gesetzt. for($i = 0; $i < $z;$i++) { $aTest2[] = 'test'; } $timer->setMarker('nach array[]'); for($i = 0; $i < $z;$i++) { array_push($aTest,'test'); } $timer->setMarker('nach array_push'); $timer->display(); ?>
php::bar PHP Wiki - Listenarchive