Besseres Debugging in PHP

Besseres Debugging in PHP

Debugging in PHP ist das größte Arschloch von allen nicht schön. Wohl dem, der einigen Aufwand betrieben hat, um XDebug an den Start zu kriegen. Aber leider ist es in der Regel so, das auf Produktiv-Servern aus Performance-Gründen XDebug eben nicht zum Einsatz kommt. Man endet dann immer wieder bei var_dump() und regelmäßigen Krisenzuständen wegen schlechter Formatierung der Ausgabe. Natürlich gibt es auch entsprechende Libraries um dagegen zu steuern. Bis hin zum automatischen Einblenden von Fehlermeldungen in der Konsole des Browsers.

Bessere var_dump() Anzeige für PHP

Sehr interessant ist das Aufwerten von var_dump() mit der Klasse Kint. Kint erkennt selbständig welchen Typ eine Variable besitzt und passt die Ausgabe entsprechend an. Interessant ist an der Stelle Kint mittels Modul automatisch in ein Framework einzubinden. Man kann es so einfach Einschalten/Ausschalten oder einfach an den Server-Status koppeln (Development / Production). Sehr feine Sache wie ich finde, die es ermöglicht innerhalb der Variablen zu navigieren, und insbesondere die Ausgabe von sehr großen Arrays und Objekten lesbar gestaltet.

Ich denke der eine oder andere von euch kann so etwas gebrauchen! Und hört auf var_dump() zu verwenden, die Ausgabe ist nicht nur schlimm, sondern auch nicht mehr zeitgemäß. Ich verstehe sowieso nicht, wieso Zend gerade an der Stelle nichts unternimmt. Jede höhere Programmiersprache verfügt über einen Debugger und einen Profiler – und jetzt erzählt mir keinen vom Zend Server und der Zend IDE, die sind auch beide nicht sinnvoll nutzbar! ;) Wie ihr seht ist Debugging in PHP eigentlich ganz einfach – man muss es nur richtig einsetzen.

Ähnliche Beiträge

Image Data URIs mit PHP Image Data URIs sind für manche Anwendungen eine feine Sache. Wozu braucht man die kleinen Helfer? Einfach ausgedrückt: direktes Einbetten von Bildern...
Tutorial Amazon Web Services mit PHP – V ... Wie im letzten Teil bereits angekündigt, erstellen wir im letzten Teil des Tutorials ein komplett funktionsfähiges Beispiel, um ein Buch mittels ISBN ...
Wasserzeichen mit PHP Image Workshop Eins mit Abstand besten Module für Drupal ist das Imagecache Modul. Ich habe mich ja schon des öfteren darüber ausgelassen wie schade es ist, das kein...
Eigener OAuth-Server in PHP Aufgrund des gestrigen Artikels über Instagram und OAuth bin ich schnell auf die Idee gekommen das es ja Quatsch wäre für eigene APIs zukünftig kein O...

Ein Kommentar

  • Solange man alle seine Projekte in der Versionsverwaltung eingecheckt und via automatischem db-sync dafür sorgt, dass die Datenbank lokal und auf dem Server auf einem Stand sind, habe ich bisher keine Schwierigkeiten mit dem Debuggen / Profilen von PHP-Skripten.

    -> lokal bzw. mit einer Admin-Session auf den Staging-System kann man z.B. xDebug, „Logging“-Klasse (extra logfile für z.B. PHP errors / warnings, db-queries), „PHP-Error-Handler“-Function, debug-parameter, etc. verwenden

Schreibe einen Kommentar