31
Mar/10
1

My favorite PHP memory profiler: XHProf

I searched for a PHP memory profiler for a long time. I used xdebug but the memory profiling feature did not work very well and it seems it has been removed in current versions. Then I found the PHP Quick Profiler. But that seemed not to be the best solution for me because I also needed to profile ajax handler scripts which don’t have any GUI to integrate the PQP. But I must admit that I did not give PQP a try. I also tried some self made profiliers similar to the script in this post. But none of the mentioned tools helped me out…

Filed under: PHP
5
Apr/08
7

[Archiv] PHP Tutorial: Thumbnails mit fester Größe und Rand

Ich habe gerade beim Aufräumen ein wenig in meinen Datensicherungen gewühlt und ein schönes Code-Schnipselchen von ~2004 gefunden. Es fühlt sich an, als wenn das eine Ewigkeit her ist, auf dem Papier sind es aber irgendwie doch “nur” vier Jahre.

Um die Zeit war ich in einer PHP-Community aktiv, im Rahmen einer Diskussion ist da irgendwann dieses kleine PHP-Script entstanden.

Das Script dient dazu aus Bildern im JPG-, GIF- oder PNG-Format Thumbnails (Vorschau-Bilder) zu erstellen. Soweit nichts besonderes. Das tolle an dem Snippet war, dass man eine feste Höhe UND Breite für das Bild angeben konnte, das Script hat das Thumbnail in dieser Größe erstellt und das Ursprungs-Bild unter Berücksichtigung der Seitenverhältnisse in dem Thumbnail abgebildet. Wenn das Bild nicht das komplette Thumnail ausfüllte, dann wurde dieses durch einen farbigen Rand ergänzt. Toll war das…

Mit Sicherheit würde ich das heute anders schreiben, ich möchte dieses Stück Code aber gerne so aufbewahren, wie es “damals” geschaffen wurde. Ich bin vor allem von der eifrigen Kommentierung beeindruckt, wobei da sicherlich einige Kommentare entbehrlich sind.

Filed under: PHP
31
Mar/08
0

Installation von Xdebug mit PHP 5.2.x auf Ubuntu 7.10

Wie im Post mit der Linkliste zum Thema PHP Performance Tuning schon angedeutet, setze ich mich hin und wieder mit dem Tool XDebug und speziell mit der Profiling-Komponente auseinander. Da gerade mal wieder eine Installation von XDebug ansteht, habe ich die wesentlichen Schritte hier mal zusammengeschrieben.

Voraussetzung: Lauffähiger Apache2 mit aktueller PHP5 Version. In meinem Fall habe ich die Software einfach die DEB-Pakete installiert.

Es gibt mehrere Möglichkeiten xdebug zu installieren:

  • Vorkompilierte Module (Windows)
  • Download/Installation via PECL (PEAR/PECL)
  • Selbst kompilieren
Filed under: PHP
10
Mar/08
2

Links: PHP Performance Tuning

Ich arbeite hin und wieder an einigen kleinen und größeren PHP Scripten. Der Wille ist da: Schon beim ersten schreiben von Scripten, soll auf Dinge wie Formatierung, Kommentierung – also einen schönen, lesbaren Stil geachtet werden.

Oftmals sieht das aber anders aus: Am Anfang steht eine Idee zu einem kleinen Script, welches schnell in Code gehackt wird und so seinen Zweck erfüllt. Mit der Zeit kommen Ideen hinzu und der Code wächst und wächst. Ich komme immer wieder an den Punkt, wo ich mir den kompletten Code vornehme und “aufräume”. Das fängt bei den Kommentaren an, geht über die Formatierung und die einheitliche Benennung von Variablen und endet dann in Performance-Optimiereungen.

Diese “kleinen” Performance-Optimierungen machen oftmals einen viel größeren Teil der Laufzeit aus, als man erwarten mag. Gerade bei OOP insbesondere in Verbindung mit rekursiven Algorithmen bin ich regelmäßig überrascht, wieviel Rechenzeit in einigen Scripten dann doch verschenkt wird.

Hier eine kleine Zusammenstellung an Links zum Thema “PHP Performance Optimierung”:

Es gibt sicherlich noch andere lesenswerte Quellen zu dem Thema. Kann jemand noch etwas empfehlen?

Filed under: PHP