Hier im Forum bekommt ihr bei euren fragen schnelle hilfe.Hier geht es rund um das Web SeitenProgrammieren.Alles rund ums Javascript,Html,Php,Css und Sql.Auf fast allen Fragen haben wir eine Antwort.
Der Soforthilfe-chat verspricht das ,was sein Name sagt. Hier sind Leute Online die sofort ihre hilfe anbieten.Seht in der OnlineListe nach und wenn einer Online ist werdet ihr auch antwort bekommen. Admine ,Moderatoren und Helfer sind unsere Spezialisten in Sachen Web Programierung
71 Unwetterwarnungen in Deutschland
Die Datenbank wurde zuletzt am 02.08.2020 17:34:28 aktualiesiert
71

PHP WTF #10

Vorsicht! Microtime liefert negative Ergebnisse!

<?php   $start = microtime();   $i = 1000;      while ($i--)   { 	//do stuff   }      $end = microtime();    echo 'Took ' . $end - $start . ' seconds'; 

Microtime

Microtime

Okay, durchatmen. Wo liegt der Fehler? Kenner bemerken vielleicht, dass das Wörtchen Took abhanden gekommen ist. Es geht einfach beim konkatenieren was schief:

<?php echo "Calculating " . 6 + 5 . " is fun!"; 

Konkatenation

Konkatenation

Nach Operator-Wertigkeit müssen wir natürlich klammern:

<?php echo "Calculating " . (6 + 5) . " is fun!"; 

Selbiges Problem tritt auch im Beispiel oben auf. Der Output von microtime() ist Millisekunden (Scriptlaufzeit) Sekunden (time()), also etwa 0.77571900 1350824124. Da bei unserer Rechnung einfach ein String -> Float – Cast vorgenommen wird und zudem noch die Operatoren-Wertigkeit missachtet wurde, kam es zu diesem merkwürdigen Ergebnis.