Wie debuggt man PHP?

Lesezeit: 4 Minuten

Benutzer-Avatar
justjoe

Wie machen wir grundlegendes Debugging in PHP?

Kann jemand eine wahre Horrorgeschichte über das Debuggen von PHP-Anwendungen (oder (noch besser) über PHP-Frameworks wie Codeigniter und WordPress) erzählen?

Ich liebe es, echte Erfahrungen zu hören, falls ich auf meiner Reise zum Erlernen von PHP auf eine ähnliche Situation stoßen muss.

XDebug kann zum Debuggen einer PHP-Anwendung verwendet werden. Grundsätzlich installieren Sie diese auf Ihrem Server und konfigurieren sie in der PHP.ini. Dann können Sie auf Ihrem Desktop-Rechner Netbeans (und vielleicht Eclipse, aber das habe ich nicht versucht) zum Remote-Debuggen einrichten. Wenn Sie sich in einer Remote-Debug-Sitzung befinden, können Sie alle Dinge tun, die Sie normalerweise erwarten: Haltepunkte setzen, Code schrittweise durchlaufen usw.

Ein großes Ärgernis bei der Verwendung von CodeIgniter mit mod_rewrite ist, dass der Debugger dadurch verwirrt wird, dass index.php nicht in der URL angezeigt wird. Ich bin mir nicht sicher, ob dies ein Problem auf der Client- oder Serverseite ist und ob das “Essen” des GET-Teils einer URL durch CI etwas damit zu tun hat. Auf jeden Fall habe ich es durchgearbeitet, indem ich eine ‘debug.php’-Datei auf den Server kopiert und das Debuggen mit dieser Datei gestartet habe – danach scheint alles gut zu funktionieren.

Auf jeden Fall empfehle ich Ihnen dringend, sich irgendwann mit XDebug einzurichten. Sie können es nicht jeden Tag verwenden, aber wenn Sie es tun brauchen Sie werden dankbar sein, dass Sie Ihre Hausaufgaben im Voraus gemacht haben.

  • Hallo und danke, ich versuche zuerst das Dokument zu lesen. Hoffentlich ist es leicht verständlich. Denn alles Tags mit Debug sind meist zu kompliziert.

    – justjoe

    14. März 2010 um 15:34 Uhr

  • Stimmt: Gerade bei PHP sind viele Artikel zum Thema Debugging meist zu kompliziert. Wie auch immer, lesen Sie die Dokumentation durch und wenn Sie irgendwelche Fragen haben, lassen Sie es mich einfach wissen – ich habe dies auf einem Linux-Server eingerichtet, also sollte ich in der Lage sein, Fragen in Bezug auf diese Umgebung zu beantworten.

    – Justin Ethier

    14. März 2010 um 15:42 Uhr


  • danke für die Unterstützung. Aber ich benutze windowsns auf xampp als Server. Also werde ich versuchen, die DLL-Datei herunterzuladen. Und vielleicht werde ich fragen, wie man xdebug benutzt, wenn das Dokument mich frustriert.

    – justjoe

    14. März 2010 um 16:22 Uhr

  • +1 für den Vorschlag von XDebug – und ich kann bestätigen, dass es auch mit Eclipse funktioniert (einschließlich CodeIgniter mit mod_rewrite – funktioniert ohne Probleme)

    – Henrik Opel

    14. März 2010 um 16:26 Uhr

  • aber Sie müssen zuerst den Zend-Optimizer in Ihrer php.ini deaktivieren. nur dann funktioniert es.

    – Gaurav Sharma

    15. März 2010 um 7:45 Uhr

Die einfachste Option (ohne Installation einer IDE) ist die Verwendung des Firefox-FirePHP-Addons.

  1. Laden Sie das FirePHP Firefox-Addon herunter und installieren Sie es
  2. Laden Sie die FirePHP-Kernbibliothek von ihrer Website herunter
  3. Extrahieren Sie die FirePHP-Bibliothek, die Sie in Schritt 2 heruntergeladen haben, und kopieren Sie nur FirePHP.class.php in den Ordner CodeIgniter /application/libraries/, aber geben Sie ihr den Namen FirePHP.php ohne den Klassenteil
  4. Schalten Sie die Ausgabepufferung von PHP ein
  5. Starten Sie Ihren Firefox, klicken Sie auf das FireBug-Symbol im unteren unteren Bereich oder gehen Sie zum Menü und wählen Sie Tools aus. Nachdem Sie FireBug und FirePHP aktiviert (auf aktiviert gesetzt) ​​haben, achten Sie darauf, auf die Registerkarte Net neben HTML, CSS, Script, DOM zu klicken und sie ebenfalls auf aktiviert zu setzen.
  6. Unter diesem Link erfahren Sie, wie Sie die Firephp-Bibliothek verwenden: http://speedtech.it/2009/05/debugging-a-codeigniter-application-with-firephp/

Es gibt ein Problem bei der Verwendung von IDE-Debuggern – es ist schlecht für das Debuggen von AJAX-Anwendungen. In diesem Fall müssen Sie eine Browsererweiterung verwenden. Für Firefox ist es FeuerPHPund gor Google Chrome ist es Php-Konsole.

Ich habe vor 2 Jahren viele Debugger ausprobiert, als ich eine Debugging-Umgebung für mich selbst in PHP einrichten wollte. Ich habe einen kurzen Beitrag dazu gepostet, Sie können ihn durchgehen http://forums.codewalkers.com/general-chat-93/which-php-ide-to-use-840352.html

Unterm Strich war phped von Nusphere das beste und seine debugbreak()-Funktion macht das Debuggen zu einem echten Glücksfall. Mit Codeigniter funktioniert das auch gut, keine Anpassungen erforderlich, wenn Sie get variable bereits aktiviert haben. Das einzige Problem mit codeigniter+phed ist, dass Sie für andere Dateimodelle keine Codenavigation wie “Rechtsklick und Deklaration finden” durchführen können.

Spät aus, ich habe ausgecheckt Codehummer Sie haben ein Codeigniter-Plugin, aber ich bin damit noch nicht fertig.

1372770cookie-checkWie debuggt man PHP?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy