Die folgenden Beispiele basieren auf der LNMP-Umgebung unter Windows.
Debuggen durch Drucken von Informationen aus dem Browser (empfohlenes Lernen: PHP-Video-Tutorial)
Methoden
Fügen Sie echo, var_dump, print_r und exit zum Code hinzu und sehen Sie sich die Ausgabe im Browser an.
Vor- und Nachteile
Vorteile:
Einfach und benutzerfreundlich, keine Installation von Plug-Ins erforderlich
Für selbst geschriebenen Code oder vertrauter Frameworks können Sie dies tun. Nachteile der Verwendung von
:
Für Mehrzweiglogik müssen Sie viel Code hinzufügen oder es mehrmals versuchen
Für unbekannte Logik , kann der vollständige Ausführungsprozess nicht abgebildet werden.
Es ist möglich, Debugging-Anweisungen im Projekt zu belassen
Kann nicht schrittweise durchlaufen
Xdebug zum Debuggen verwenden
XDebug ist C /S-Struktur, wobei der Client Xdebug in PHP installiert ist, der Server das in der IDE installierte Plug-in ist und das DBGP-Protokoll zur Kommunikation verwendet. Wenn PHP ein Skript ausführt, sendet es Debugging-Informationen über das Xdebug-Plug-in an die IDE und empfängt Steuersignale von der IDE.
Sie müssen Xdebug für PHP installieren und aktivieren und dann das Xdebug-Plug-in der IDE einrichten, damit die beiden kommunizieren können.
Vor- und Nachteile
Unterstützt das Debuggen in einem Schritt und die Erfassung beliebiger Variablenwerte
Komplexe Konfiguration, erfordert IDE zur Installation von Plug-Ins
Unterstützt die Zusammenarbeit Bei Browsern muss die Anfrage den Parameter vom Browser gesendete Anfrage. Sie können XDEBUG_SESSION_START=session_name in den GET/POST/Cookie-Parametern hinzufügen, damit Xdebug erkennt, dass diese Anfrage debuggt werden muss, und eine Verbindung zur IDE herstellen muss.
Debuggen über Konsolenterminal (CLI-Modus)
Für Nicht-Webanwendungen, wie geplante Aufgaben oder Komponententests, können Sie direkt in der Konsole debuggen.
Verwenden Sie in PHPStorm die Tastenkombination Alt+F12, um das Befehlszeilenterminal zu öffnen. Da in der IDE jedoch nur ein Terminal angezeigt werden kann, deckt das Debugging-Terminal nach dem Einschalten des Debuggens das Befehlszeilenterminal ab. Daher ist es besser, ein separates Befehlszeilenterminal zu öffnen (Sie können ein DOS-Fenster oder PowerShell unter Windows verwenden). ). Methode und Prinzip
Webanwendungen verwenden GET/POST/Cookie-Parameterflags zum Debuggen von Anforderungen, während Nicht-Webanwendungen das Debuggen durch Festlegen von Umgebungsvariablen im Befehlszeilenterminal ermöglichen.
Zwei Schritte:
Setzen Sie die Umgebungsvariable XDEBUG_CONFIG="idekey=session_name". Dieser Idekey muss mit dem im Xdebug-Abschnitt von php.ini festgelegten Idekey identisch sein.
Führen Sie das Skript im Befehlszeilenterminal aus. Bei der Ausführung wird das Debug-Terminal der IDE aufgerufen, was ein einstufiges Debuggen ermöglicht, und die Ausgabeergebnisse werden in Echtzeit im Befehlszeilenterminal angezeigt.
Weitere technische Artikel zum Thema PHP finden Sie in der Spalte
PHP-Grafik-Tutorial, um mehr darüber zu erfahren!
Das obige ist der detaillierte Inhalt vonSo debuggen Sie PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!