Debuggen eines PHP-Projekts mit NetBeans

Wenn Programmierer beim Codieren und Testen sofort hängen bleiben, reicht es manchmal nicht aus, die Protokolle zu betrachten, um die Dinge schnell zu beheben.

Wir werden XDebug in unsere NetBeans-Konfiguration integrieren, damit wir Php 7-Projekte debuggen können.

Es folgt die Konfiguration, an der ich arbeiten werde :

  • Remote-Webserver mit Php7 und Apache 2
  • Ein Zend 3-Projekt
  • Lokaler Computer mit Netbeans 8.2
  • Die SFTP-Einstellungen sind korrekt eingerichtet, um Dateien beim Speichern auf den Server hochzuladen

Wenn Sie NetBeans installieren müssen, befolgen Sie die Schritte hier beschrieben: Netbeans Installation.

Der lokale Computer wird unter Windows ausgeführt, dies hat jedoch keine Auswirkungen auf den Vorgang, wenn Sie sich unter Linux oder Mac befinden, da sich der Server auf einem Remotecomputer befindet.

Erste Schritte mit XDebug

Installieren wir zuerst den Debugger :

# apt-get install php-xdebug

Aktivieren Sie dann die Erweiterung:

# phpenmod xdebug

Überprüfen Sie nun die Datei unter /etc/php/7.0/mods-available/xdebug.ini und die folgenden Zeilen hinein :

zend_extension=xdebug.soxdebug.idekey=netbeans-xdebugxdebug.remote_enable= Onxdebug.remote_handler=dbgpxdebug.remote_mode=reqxdebug.remote_host=888.888.888.888xdebug.remote_port=9000

Ersetzen Sie 888.888.888.888 durch Ihre lokale IP (die IP, auf der Sie NetBeans IDE ausführen).

Starten Sie Ihren PHP-Server neu und Sie sollten dies sehen :

 Composer Serve - XDebug

Sehen Sie die Warnmeldung? Natürlich wirkt es sich auf die Leistung Ihrer Website aus, also erreichen Sie dies niemals auf einem Produktionsserver, sondern verwenden Sie es besser mit einer virtuellen Maschine oder auf einem lokalen Server.

Überprüfen Sie Ihre PHP-Konfiguration mit dem folgenden Befehl:

# php -i | grep xdebug

Auf Ihrem lokalen Computer, auf dem NetBeans ausgeführt wird, sollten Sie den 9000-Port zulassen.

Die Verwendung eines Remote-Servers erfordert die Zuordnung der Pfade in der erweiterten NetBeans-Webkonfiguration :

  • Klicken Sie mit der rechten Maustaste auf Ihren Projektnamen auf der linken Seite und klicken Sie auf Eigenschaften

 Erweiterte Konfiguration NetBeans

 Netbeans

Versuchen Sie, Ihre lokalen und Remote-Pfade abzugleichen, und klicken Sie auf OK.

Wenn Sie den Debugger jetzt von NetBeans aus starten (STRG-F5), sollte das funktionieren, wir werden jetzt sehen, wie wir es mit der Standardanwendung von Zend 3 testen können.

XDebug-Test

Genaue Informationen zu den Debugging-Tools in der IDE finden Sie unter der folgenden URL.

Wenn Sie nur einen Schnelltest durchführen möchten, richten Sie einen oder mehrere Haltepunkte in Ihren Projektdateien ein, z. B. im IndexController.php der Zend 3 Anwendung in Zeile 17.

  1. Starten Sie den Debugger
  2. Die Seite wird am Haltepunkt angehalten, siehe folgenden Screenshot :

 Haltepunkte - Xdebug

Durchsuchen Sie die Registerkarten der einzelnen Konsolen, um sich vertraut zu machen und weitere Tests durchzuführen, indem Sie weitere Haltepunkte hinzufügen!

Wenn Sie das PHP-Debugging deaktivieren müssen, geben Sie jederzeit den Befehl aus :

# phpdismod xdebug

Nun, wir sind jetzt alle gut, in einem nächsten Tutorial werden wir die Verwendung von PHPUnit zusammen mit NetBeans und XDebug Tool überprüfen, wir werden auch über KCachegrind für die Profilerstellung unseres PHP-Codes diskutieren.

Vergessen Sie nicht, uns in den sozialen Medien zu folgen, um aktuelle Informationen zu erhalten.

Write a Comment

Deine E-Mail-Adresse wird nicht veröffentlicht.