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.
Laden Sie das FirePHP Firefox-Addon herunter und installieren Sie es
Laden Sie die FirePHP-Kernbibliothek von ihrer Website herunter
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
Schalten Sie die Ausgabepufferung von PHP ein
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.
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.
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.