Static-Variablen in Methoden

10. März 2011

16 Kommentare

Seit paar Tagen optimiere und refactoriere ich eine Komponente die bereits vor einem Jahr von PHP4 auf PHP5 umgestellt und refactoriert wurde. Dabei bin ich auf viele lustige Codefragmente gestoßen. Eins hat bei mir für viel Aufmerksamkeit gesorgt. Und zwar: innerhalb einer Methode wurden Variablen die nur in dieser Methode verwendet werden als „static“ Deklariert. Hmmm…, was soll das den bitte? Ist es ein Feature? Wenn ja, wo ist der Verteil? So habe ich mich auf der Suche gemacht. Hier ein Beispiel aus der Komponente: Den ganzen Beitrag lesen.

¬ geschrieben von gjerokrsteski in PHP Tricks und Tipps

strncmp() ist schneller als substr()

23. Februar 2011

5 Kommentare

In diversen Foren und Blogs wird schon seit 2007 geschrieben, dass strncmp() schneller als substr() sei. Und zwar, stolze 20%!!! Ist das denn so? Stimmt die Berechnung auch? Nun, wie wir alle es wissen, Codefragmente die viel mit string-Typen zu tun haben, sind nicht Ressourcen-schonend und können den gesamten Prozess sehr verlangsamen. Um das Ganze besser vergleichen zu können, habe ich diese einfache Klasse „Benchmark_Substr_vs_Strncmp“ geschrieben. Mittels der oben genannten Funktionen wird versucht aus einem Test-Array, mit zwanzig Einträgen, den Array-Key „GETME__“ zu ermitteln. Diese Suche wird mit beiden Funktionen je 10.000-mal ausgeführt. Bei jedem Testlauf wird die Dauer für die Suche in eine CSV Datei festgehalten. Den ganzen Beitrag lesen.

¬ geschrieben von gjerokrsteski in PHP Tricks und Tipps

Die Guckloch Optimierung

10. März 2010

0 Kommentare

Mittlerweile wissen wir alle, dass es einige Ansätze gibt, mit denen wir unsere PHP Anwendung schneller machen können. Wir verwenden Compiler-Beschleuniger, Code-Aufräumer sowie verschiedene Caching Verfahren, und steigern so die Leistung der Anwendung. Vor deren Einsatz lohnt es sich immer, erst einen Blick auf den eigenen Code zu werfen. Denn oft sind eine nicht gut formulierte Datenbankabfrage oder die Geschäftslogik der Grund für eine langsame Anwendung. Dabei spielen auch oft die gesetzten Indices auf der Datenbanktabelle eine Rolle. Hier sollte man bei der Datenbankabfrage genau prüfen, ob sie auf die Indices zugreift und sie eventuell entsprechend anpassen. Oft ist es performanter, die Daten einfach nur aus der Datenbank zu holen und sie erst in der Geschäftslogik zu sortieren oder zu filtern. Das muss man einfach ausprobieren, denn das ist von Fall zu Fall unterschiedlich. Zusätzlich sollte man auch einen Blick auf die geschriebenen Algorithmen und Funktionen werfen, denn es gibt immer welche, die noch schneller sind. Den ganzen Beitrag lesen.

¬ geschrieben von gjerokrsteski in PHP Tricks und Tipps

Powered by Wordpress • Abonniere den RSS Feed