So installieren Sie Xdebug PHP und richten PHPStorm über CLI ohne Apache ein

Inhaltsverzeichnis

  1. Einleitung
  2. Schritt 1: Installation von PHP und Xdebug
  3. Schritt 2: Konfiguration von Xdebug in xdebug.ini
  4. Schritt 3: Konfiguration von PHPStorm
  5. Schritt 4: Xdebug-Testen
  6. Verwendung von Xdebug mit Magento CLI
  7. Beheben häufiger Probleme
  8. Fazit
  9. FAQ

Einleitung

Die Entwicklung von PHP-Anwendungen kann herausfordernd sein, insbesondere beim Debuggen von komplexem Code. Wussten Sie, dass der Einsatz von Xdebug diesen Prozess erheblich vereinfachen kann? Xdebug ist ein leistungsstolles Werkzeug, das PHP-Entwicklern ermöglicht, ihren Code effizienter zu debuggen. In diesem Blogbeitrag werden wir eine Schritt-für-Schritt-Anleitung dazu geben, wie Sie Xdebug installieren und PHPStorm über die Befehlszeile ohne Apache einrichten.

Dieser Artikel ist besonders für PHP-Entwickler:innenn nützlich, die ihre Debugging-Workflow verbessern und ihre Produktivität steigern möchten. Am Ende dieses Leitfadens werden Sie ein klares Verständnis dafür haben, wie Sie Xdebug und PHPStorm einrichten und damit sicherstellen, dass Ihr Entwicklungsprozess reibungslos und fehlerfrei verläuft.

Schritt 1: Installation von PHP und Xdebug

Um den Prozess zu starten, müssen Sie PHP und Xdebug auf Ihrem System installieren. Hier ist ein einfacher Weg, um das zu erledigen:

  1. Öffnen Sie Ihr Terminal und führen Sie den folgenden Befehl aus, um die neueste Version von PHP und Xdebug zu installieren:

    sudo apt-get install php8.3-xdebug
    
  2. Überprüfen Sie die Installation, indem Sie die PHP-Version überprüfen:

    php -v
    

Sobald Sie die Installation bestätigt haben, können Sie mit dem nächsten Schritt fortfahren.

Schritt 2: Konfiguration von Xdebug in xdebug.ini

Die Konfiguration von Xdebug ist entscheidend dafür, dass es reibungslos mit PHP funktioniert. Befolgen Sie diese Schritte, um Xdebug zu konfigurieren:

  1. Suchen Sie die xdebug.ini-Datei. Diese Datei befindet sich normalerweise im Verzeichnis, in dem PHP installiert ist.

  2. Öffnen Sie xdebug.ini zur Bearbeitung. Verwenden Sie einen Texteditor wie nano oder vim für diesen Zweck:

    sudo nano /etc/php/8.3/mods-available/xdebug.ini
    
  3. Fügen Sie die folgenden Konfigurationseinstellungen hinzu:

    zend_extension=xdebug.so
    xdebug.mode=debug
    xdebug.start_with_request=yes
    
  4. Speichern Sie die Datei und beenden Sie den Editor.

  5. Starten Sie den Apache-Dienst neu, um die Änderungen zu übernehmen:

    sudo service apache2 restart
    

Auch wenn dieser Leitfaden sich auf die CLI-Nutzung ohne Apache konzentriert, ist es wichtig an dieser Stelle den Apache neu zu starten, um sicherzustellen, dass die Konfigurationen angewendet sind. Dieser Schritt kann als Sicherheitsmaßnahme zur Vorbereitung Ihrer Umgebung angesehen werden.

Schritt 3: Konfiguration von PHPStorm

Um effektiv zu debuggen, müssen Sie PHPStorm mit Xdebug synchronisieren. So können Sie PHPStorm konfigurieren:

  1. Öffnen Sie PHPStorm und navigieren Sie zu Einstellungen (oder Bevorzugt unter macOS).

  2. Klicken Sie auf PHP im linken Seitenbereich und klicken Sie dann auf Debuggen.

  3. Richten Sie einen neuen PHP-Interpreter ein, indem Sie die zuvor installierte PHP-Version auswählen. Stellen Sie sicher, dass die Xdebug-Einstellungen korrekt erkannt werden.

  4. Navigieren zu PHP -> Server und fügen Sie eine neue Serverkonfiguration hinzu:

    • Name: localhost
    • Host: localhost
    • Port: 9000
    • Debugger: Xdebug
  5. Übernehmen Sie die Änderungen und schließen Sie das Einstellungsfenster.

Schritt 4: Xdebug-Testen

Das Testen stellt sicher, dass Xdebug richtig eingerichtet ist und bereit ist, Ihren PHP-Code zu debuggen. Befolgen Sie diese Schritte:

  1. Erstellen Sie eine neue PHP-Datei in Ihrem Projektverzeichnis, z. B. test.php.

    <?php
    echo "Test Xdebug";
    ?>
    
  2. Setzen Sie einen Haltepunkt in der test.php-Datei, indem Sie auf den linken Rand der Zeilennummer klicken, an der Sie die Ausführung in PHPStorm anhalten möchten.

  3. Führen Sie die PHP-Datei aus mit aktiviertem Xdebug:

    XDEBUG_SESSION_START="PHPSTORM" php test.php
    

PHPStorm sollte jetzt die Ausführung am von Ihnen festgelegten Haltepunkt anhalten, was darauf hindeutet, dass Xdebug korrekt funktioniert.

Verwendung von Xdebug mit Magento CLI

Auch Magento-Entwickler:innenn können von der Verwendung von Xdebug mit Magento-CLI-Befehlen profitieren. Hier ist, wie Sie es tun können:

  1. Führen Sie einen beliebigen Magento-CLI-Befehl mit aktiviertem Xdebug aus. Zum Beispiel:
    XDEBUG_SESSION_START="PHPSTORM" php bin/magento se:up
    

Dieser Befehl löst den Magento-Setup-Upgrade-Befehl mit Xdebug-Sitzung aus.

Beheben häufiger Probleme

Manchmal funktioniert Xdebug nicht wie erwartet. Ein häufiger Fehler ist die Unfähigkeit, sich mit dem Debugging-Client zu verbinden:

Xdebug: [Step Debug] Verbindung zum Debugging-Client konnte nicht hergestellt werden. Versucht: localhost:9000 (über xdebug.client_host/xdebug.client_port).

Dieses Problem kann behoben werden, indem:

  1. Überprüfen Sie die PHPStorm-Debug-Optionen. Stellen Sie sicher, dass Einstellungen wie Erstmals an erster Stelle anhalten und Haltepunkte auflösen, sofern nicht verfügbar aktiviert sind.

  2. Starten Sie PHPStorm neu, um etwaige Änderungen anzuwenden und den Debugging-Prozess erneut zu versuchen.

Fazit

Indem Sie diesen detaillierten Schritten folgen, können Sie Xdebug und PHPStorm effizient für das Debuggen über die Befehlszeile einrichten, ohne Apache zu benötigen. Dieser Ansatz ermöglicht einen effizienteren Debugging-Prozess, der es Entwickler:innenn erleichtert, Probleme in ihrem PHP-Code zu identifizieren und zu beheben.

Für weitere Fragen oder Herausforderungen, die Ihnen beim Befolgen dieses Tutorials begegnen, zögern Sie nicht, sich zu melden. Fröhliches Debugging!

FAQ

F1: Kann ich Xdebug auch mit anderen IDEs als PHPStorm verwenden?

Ja, Xdebug kann so konfiguriert werden, dass es mit vielen anderen IDEs wie Visual Studio Code, Eclipse und NetBeans funktioniert. Die genauen Konfigurationsschritte können variieren, aber die Grundprinzipien bleiben gleich.

F2: Ist es erforderlich, Apache neu zu starten, wenn ich die CLI verwende?

Das Neustarten von Apache nach der Konfiguration von Xdebug ist eine zusätzliche Vorsichtsmaßnahme, um sicherzustellen, dass laufende PHP-Prozesse die neue Konfiguration übernehmen. Bei CLI-Vorgängen kann dieser Schritt je nach Setup manchmal übersprungen werden.

F3: Kann Xdebug in einer Produktionsumgebung verwendet werden?

Obwohl möglich, wird nicht empfohlen, Xdebug in einer Produktionsumgebung zu verwenden aufgrund der Performance-Belastung und potenziellen Sicherheitsrisiken. Xdebug wurde für lokale Entwicklungsumgebungen entwickelt, in denen es beim Debuggen und Profiling helfen kann.

F4: Funktioniert Xdebug mit allen PHP-Versionen?

Xdebug ist mit den meisten PHP-Versionen kompatibel, aber Sie sollten immer die spezifische Versionenkompatibilität auf der Xdebug-Website überprüfen, um sicherzustellen, dass es mit Ihrer PHP-Version funktioniert.

F5: Wie kann ich Xdebug automatisch mit jedem PHP-Request starten lassen?

Sie können die xdebug.ini-Datei anpassen, um die Direktive xdebug.start_with_request=yes einzuschließen, damit Xdebug automatisch mit jedem PHP-Request startet.