Inzwischen haben wir alle gelernt, Vagrant- und Entwicklungsflexibilität zu lieben. Unabhängig von der Plattform können Sie in kürzester Zeit eine Entwicklungsumgebung in Betrieb haben, die nicht nur stabil ist, sondern auch in jeder Hinsicht in der Umgebung, die Ihre Kollegen, Mentoren oder Mentees verwenden, identisch sind. Aber als die Anwendungen, die wir entwickeln, befinden sich in einer virtuellen Maschine, können sie mit XDEBUG etwas schwierig debuggen, was standardmäßig auf Localhost abgestimmt ist.
xDebug ist eine PHP -Erweiterung, mit der Sie Ihren Code debuggen und profilieren, detaillierte und lesbare Stapelspuren anzeigen können, wenn Fehler auftreten, und vieles mehr. Eine detaillierte Durchführung finden Sie in Shameers Post. Wenn Sie damit völlig nicht vertraut sind, können Sie es zuerst nach den folgenden Verfahren installieren und dann auf den oben verlinkten Beitrag für eine Aufschlüsselung von allem finden, was XDebug für Sie und Ihre Apps tun kann.
In diesem Tutorial richten wir XDebug mit PHPStorm für gehostete PHP -Apps ein.Vorbereitung
Sobald es gebootet ist, ein Vagrant -SSH in die IT und installieren Sie eine Muster -Laravel -App. Sie können dies tun, indem Sie ausführen:
composer create-project laravel/laravel Laravel --prefer-dist
xDebug
ls /etc/php5/fpm/conf.d ls /etc/php5/cli/conf.d
Um XDEBUG aus der Ferne zu verwenden, müssen wir die INI -Datei ändern und ihm einige Parameter geben, die standardmäßig ausgeschaltet sind. Die Standarddatei von Homestead von XDebug.ini (gefunden in/etc/php5/mods-verfügbar) enthält ursprünglich nur die Anweisung, die PHP aktiviert, aber nichts anderes:
composer create-project laravel/laravel Laravel --prefer-dist
Fügen Sie unter dieser Zeile die folgenden Optionen hinzu:
ls /etc/php5/fpm/conf.d ls /etc/php5/cli/conf.d
Schließen Sie die Datei und starten Sie PHP-FPM: Sudo Service PHP5-FPM-Neustart. Das ist alles, was wir am Ende von XDebug konfigurieren müssen.
PHPStorm benötigt auch ein bisschen Konfiguration. Verwenden Sie zunächst das Verzeichnis der Laravel -App, die wir in Schritt 1 erstellt haben:
Gehen Sie dann zu Projekteinstellungen und unter Php -> Server fügen Sie eine neue hinzu. Geben Sie ihm Port 8000, den Namen Ihrer Wahl, und geben Sie unter Host den Namen des virtuellen Hosts Ihrer Website (Standard: Homestead.app). Verwenden Sie dann Pfadzuordnungen, um Pfade so zu kartieren, dass der Speicherort Ihrer Codebasis auf dem Host -Computer dem Standort auf der VM entspricht. Tun Sie dasselbe für den öffentlichen Unterordner. Im Grunde genommen blockieren die Ordner von Homestead.yaml zu diesem Fenster. Folgen Sie meinem Beispiel:
Um den Debugger in einer App auszuführen, müssen wir eine Debug -Umgebung erstellen. Gehen Sie in Run -> Konfigurationen bearbeiten. Erstellen Sie dort eine neue Konfiguration für "PHP -Webanwendung":
Wenden Sie die neuen Einstellungen an und schließen Sie die Konfiguration.
Das ist alles, was es gibt, um es aufzubauen. Mal sehen, ob es wie erwartet funktioniert.
in App/Routes.php, ändern Sie die Schließung der Startroute, damit es wie der folgende Code aussieht:
zend_extension=xdebug.so
setzen
Beachten Sie, dass unsere $ eine Variable jetzt da ist. Beachten Sie auch, dass Sie es erweitern können, um zu sehen, was es enthält. Wenn Sie auf die Schaltfläche Lebenslauf klicken, wird er noch einmal eine etwas andere Ausgabe erzeugt:
Unser $ a Array hat aufgrund der von uns durchgeführten Array_Pop -Operation ein Element weniger. Dies beweist, dass unsere Haltepunkte wie beabsichtigt funktionieren, und Xdebug wurde erfolgreich eingerichtet.
Trotz der ersten Eindrücke ist XDebug sehr einfach für die Verwendung durch Vagrant zu installieren, wenn man weiß, was getan werden muss. Diese Anweisungen sind leicht für die Integration von XDEBUG in eine andere IDE anwendbar. Passen Sie sie also nicht an, wie Sie es für richtig sehen. Nur die Abschnitte von Phpstorming müssen sich ändern.
Debuggen Sie durch die VM -Schicht? Verwenden Sie andere Ansätze? Haben wir Probleme, die wir versäumt haben, zu erwähnen? Lass es uns wissen!
Was ist Xdebug und warum sollte ich es verwenden? Profilierungsfunktionen. Sie können Ihren Code durchlaufen, variable Werte anzeigen und Spuren von Stapeln ansehen. Dies erleichtert es, zu verstehen, wie Ihr Code funktioniert, und um Fehler oder Ineffizienzen zu identifizieren. XDebug ist ein wesentliches Werkzeug für einen PHP -Entwickler, da es den Debugging -Prozess erheblich verbessert. Das Menü Einstellungen und "Sprachen & Frameworks", dann "Php" und dann "Debug". Hier können Sie den Debug -Port festlegen und die Option "Hören Sie für PHP -Debug -Verbindungen an. Sie müssen auch den PHP -Interpreter so konfigurieren, dass er XDebug verwendet. Mehrere Codezeilen. Dazu gehört die Angabe des Pfades zur XDEBUG -Erweiterung, das Festlegen der Optionen Remote_Enable und Remote_Autostart auf 1 und Angabe des Remote_Host und Remote_Port. Der genaue Code, den Sie hinzufügen müssen, hängt von Ihrem spezifischen Setup ab. Dieser Xdebug versucht, eine Verbindung zu einem Port zu verbinden, der nicht geöffnet ist oder von einer Firewall blockiert wird. Sie müssen sicherstellen, dass der in Ihrer xDebug -Konfiguration angegebene Port geöffnet ist und dass alle Firewalls konfiguriert sind, um Verbindungen zu diesem Port zu ermöglichen.
Das obige ist der detaillierte Inhalt vonSo installieren Sie XDebug mit Phpstorming und Vagrant. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!