phpbar.de logo

Mailinglisten-Archive

[php] eregi() ?

[php] eregi() ?

Sebastian Mendel lists at sebastianmendel.de
Mit Mar 8 17:00:18 CET 2006


Andi Voss schrieb:
> Am Dienstag, 7. März 2006 10:00 schrieb Sebastian Mendel:
>> huiuiui, ich bin aber wieder Arrogant heute mit meinem Nichtwissen ...
>>
>> habe die Quelle doch noch gefunden (wurde hier schon mal geposted)
>>
>> in den Kommentaren:
>> http://ilia.ws/archives/12-PHP-Optimization-Tricks.html
> 
> Hi,
> 
> ich habe mal von der Seite einen Vorschlag zum Testen übernommen und etwas  
> erweitert.
> Jetzt weiss ich nicht, ob ich durch irgendetwas das Testscript unbrauchbar 
> gemacht habe, aber wenn man dieses Script mehrmals nacheinander aufruft, so 
> kommen immer wieder unterschiedliche Ergebnisse raus.
> Mal ist diese Version des inkrementierens schneller, mal diese. Es gibt 
> vielleicht eine Tendenz, aber auf keinen Fall ein eindeutiges Ergebnis 
> zugunsten einer Version.
> 
> Testsystem ist ein Linux-Rechner, der absolut nichts zu tun hat, also es 
> laufen nur systemerhaltende Prozesse.
> Pentium II 350 MHz mit 300irgendwas RAM.
> PHP 4.4.0
> 
> Wenn das Testscript brauchbar ist, dann... ja was dann... dann kann ich das 
> Ergebnis nur so deuten, dass es zumindest in dieser Größenordnung egal ist, 
> welche Methode man zum inkrementieren benutzt.
> Vielleicht ändert sich das Verhalten ja noch, wenn mehr Last am Server ist, 
> aber bis 1000000 Schleifendurchläufen hat sich das Ergebnis auf meinem 
> Testsystem immer wieder bestätigt.

Also bei mir ist ++$i schneller, allerdings nur wenn man nicht beide 
Varianten in einem Script testet, sondern getrennt.

Der Unterschied liegt bei mir unter 10%, was effektiv 10ns 
(Nano-Sekunden) pro Aufruf sind ...


<?php
$count = 100000000;
$i = 0;

$time_1 = microtime(true);
while (++$i < $count) {
     ;
}
echo (microtime(true) - $time_1) . ' seconds' . "\n";
?>

-- 
Sebastian Mendel

www.sebastianmendel.de
www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet

php::bar PHP Wiki   -   Listenarchive