Archiv für Kontrollstrukturen

IPC 2010 Herbst

mod_gzip, mod_deflate und sonstige Komprimierungsverfahren für Web-Inhalte

Bei den meisten Webprojekten dauert die Übertragung des HTML-Codes zum Client länger als die Generierung der Inhalte auf dem Server. Zusätzlich besteht immer das Problem, dass Bandbreite auf Servern / Webhosting-Paketen oft (teuer bezahlte) Mangelware ist. Dieses Problem und wie man es umgehen kann, habe ich bereits in einem früheren Beitrag beschrieben. Diesmal möchte ich weitere Möglichkeiten der Bandbreiteneinsparung zusammenfassen. Weiterlesen >

Schlagwörter:, , ,

Objekte in Sessions speichern

Seit der Version 5 bietet PHP bessere und erweiterte Unterstützung für OOP. Doch anders als in anderen Sprachen wie z.B. Java, werden die Objekte bei PHP 5 bei jedem Request neu erzeugt. So ist OO nicht ganz so schön umzusetzen, z.B. ein Benutzer-Objekt während der gesamten Session zu verwenden.
Weiterlesen >

Schlagwörter:, ,

Wenn ein String false ist …

Wie ich neulich dazugelernt habe, unterscheidet PHP in Funktionen und Sprachkonstrukte (werden in guten Editoren auch farblich anders hervorgehoben als Funktionen). Und da überlegte ich, ob man auf Grund der Tatsache, dass Sprachelemente sehr schnell sind, nicht irgendwelche logischen Elemente durch eben diese ersetzen kann. Beim Durchschauen habe ich dabei eine der simpelsten Logik-Operationen entdeckt, die in vielen Anwendungen vorkommt: Die Prüfung, ob ein String leer, null, false oder 0 ist. Weiterlesen >

Schlagwörter:, , ,

Postfix- vs. Präfix-Inkrementierung

Diesmal wollen wir die alte Frage, ob nun das Postfix- oder das Präfix-Inkrement schneller ist, von der C++-Welt auf PHP übertragen und kurz messen, welche Variante wir in unseren for-Schleifen nehmen sollten. Weiterlesen >

Schlagwörter:, , ,

Feststellen, ob eine Zahl ungerade / gerade ist

Oft möchte man in der täglichen Web-Programmier-Praxis feststellen, ob eine Zahl gerade oder ungerade ist (gerade = durch 2 ganzzahlig teilbar). Ich selbst gebrauche das gern, um Übersicht in Artikellisten zu schaffen, indem ich abwechselnd die Hintergrundfarbe mal heller und mal etwas dunkler darstelle. Das ist wesentlich übersichtlicher als die Variante alle mit gleichem Hintergrund aufzulisten. Wie nun aber prüft man möglichst performant, ob eine Zahl gerade oder ungerade ist? Weiterlesen >

Schlagwörter:, , , ,

Continue und Break

Sehr häufig hat man Schleifen und möchte aber mit dieser Schleife nur einen Fakt feststellen, der möglicherweise gar nicht das Durchlaufen aller Array-Einträge benötigt. Wenn man beispielsweise ein Array mit lauter natürlicher Zahlen hat und überprüfen möchte, ob die Summe aller Zahlen über einem bestimmten Wert liegen. Bei einer solchen Aufgabe kann die Schleife ja abgebrochen werden, wenn der bestimmte Wert überschritten wurde (man beachte, dass es sich um natürliche Zahlen handelt, die nicht negativ sein können). Leider fällt mir kein praxisnäheres Beispiel ein, aber es gibt sicherlich auch in ihrer Anwendung Schleifen, auf die das angewendet werden kann. Weiterlesen >

Schlagwörter:, , , , ,