<a href="-howtostandup/468799-pharmacy-online"></a> <a href="-online-1"></a> <a…
von:
<a href="-online-14"></a> <a href="-online-13"></a> <a href="-online"></a> <a…
von:
Ultima schrieb:
Ich bin mir sicher das Heiko & Matthias auch noch ein paar gute Tipps auf Lager haben.
Danke für die Blumen. Ich bin da eher verhalten, bei solchen allgemeinen Aussagen zum Thema PHP-Beschleunigung, weil es oft auf das Gesamtprojekt ankommt.
Generell gilt, dass man sich im Vorfeld überlegen sollte, wie die Abfragen erfolgen sollen, sprich wo nach wird eher gesucht respektive abgefragt. Florian bringt es auf dieser Seite (http://floern.com/webscripting/geschwindigkeit-von-php-scripts-optimieren) sehr schön auf den Punkt.
Habe aufgrund dieses Threads mal die Benchmarks im Kapitel Mikrooptimierungen überarbeitet und aktualisiert: floern.com/webscripting/php-mikro-optimierungen-und-benchmarks
preg_match(\'#\\b(iphone|ipod|android|opera mobi|opera mini|windows phone|windows ce|\'.
\'blackberry|symbian|series60|samsung|palm|playstation portable|\'.
\'profile/midp|nokia|fennec|htc[\\-_]|up\\.browser)\\b#i\',
$_SERVER[\'HTTP_USER_AGENT\'] );preg_match(\'#\\b(ip(hone|od)|android|opera m(ob|in)i|windows (phone|ce)|\'.
\'s(ymbian|eries60|amsung)|p(alm|laystation portable|rofile/midp)|\'.
\'blackberry|nokia|fennec|htc[\\-_]|up\\.browser)\\b#i\',
$_SERVER[\'HTTP_USER_AGENT\'] );Eine Optimierung, die mir noch eingefallen ist:
is_file anstatt file_exist verwenden.
Zu diesem Thema hab ich noch einen sehr interessanten Link gefunden.
Ultima schrieb:
Zu diesem Thema hab ich noch einen sehr interessanten Link gefunden.
Echt cool, danke.
Ich finde es toll, dass dieses Thema nicht in Vergessenheit gerät. Vielleicht kommen ja noch mehr Vorschläge.
Wo wir gerade beim Thema sind, ein kleines Rätsel: Welches dieser Schnipsel ist schneller? <?php
for ($i = 0; $i < = 1000000; $i++) {
$array[$i] = $array[$i] * $array[$i];
$array[$i] = base_convert($array[$i], 10, 16);
}
?><?php
for ($i = 0; $i < 1000000; $i++) {
$array[$i] = $array[$i] * $array[$i];
}
for ($i = 0; $i < 1000000; $i++) {
$array[$i] = base_convert($array[$i], 10, 16);
}
?>
Die Antwort darauf gibt es hier.
UFOMelkor schrieb:
Die Antwort darauf gibt es hier.
Naja, eine richtige Antwort war das ja nicht, aber erstaunt bin ich dennoch. Ich ging in der Tat davon aus, dass die letztere Variante etwas langsamer wäre, als die erste.
Die Schleifen sind auf modernen Prezessoren fast nicht mehr messbar. Pro Durchlauf werden 3 Maschinen-Codes verarbeitet. Bei 4 GHz ist das marginal.
Lässt man das Beispiel auf einem 16-Bit Prozessor mit 100 MHz laufen, schlägt die Schleife deutlich zu buche, da die Zahl 1000000 sich nicht mit 16 Bit abbilden lässt. Hier kommt dann eine 2 Schleife dazu, die etwa 15 mal den maximalen 16 Bit Wert von 65536 abarbeitet.
Muss dann noch der Zähler-Wert zwischengespeichert werden, kommt da einiges zusammen.
Früher waren unnötige Schleifen ein Problem, heute sind sie vernachlässigbar.
Gruß Matthias
Was ist eigentlich schneller, Array oder ArrayObject ?
Chance schrieb:
Was ist eigentlich schneller, Array oder ArrayObject ?
Array.
Gruß Thomas
Beitrag erstellen
EinloggenKostenlos registrieren