Drupal-Einstellungen für PHPStorm

7

Ich möchte versuchen, mit PHPStorm Debug zu arbeiten.

Ich habe Debug bereits auf meinem Mac installiert und die Datei php.ini geändert. Außerdem habe ich den Debug Helper für Chrome installiert und ein Projekt auf PHPStorm erstellt.

Wenn ich Debug starte, findet mein PHPStorm eine Verbindung, aber ich hatte das Problem, dass PHPStorm immer in meine "index.php" -Datei springt, unabhängig davon, wo ich meinen Haltepunkt gesetzt habe.

Ich muss immer die "Wiedergabe" -Taste drücken, aber es läuft immer durch die "index.php" -Datei und meine Site (ich arbeite mit VM) wird nicht geladen, bevor ich "Wiedergabe" drücke.

Was muss ich tun, damit PHPStorm nur zu meinem Haltepunkt springt?

Aktualisiert

Anbei meine PHPStorm-Einstellungen:

Meine PHP-Einstellungen

Ich habe ein VM-Projekt, also füge ich den Drupal-Pfad in meinem Projekt "htdocs" hinzu.

Weiter meine Debugging-Konfigurationen

PHPUnit

Ich führe einen Test erfolgreich durch

Mein Debugger läuft immer in index.php ohne Haltepunkte

weristsam
quelle
Ich stimme zum Schließen zu, da sich diese Frage auf das PHP-Debugging mit einer bestimmten IDE und einem bestimmten Server-Setup bezieht, die auf stackexchange.com gestellt werden können . Es hat wirklich nichts mit Drupal zu tun.
J. Reynolds
Ich stimme dir nicht zu. Die Frage ist sehr spezifisch für die Verwendung von PHPStorm zur Entwicklung eines Drupal-Moduls. Dies unterscheidet sich von der Verwendung von PHPStorm zur Entwicklung einer generischen Webanwendung. Letzteres ist viel einfacher einzurichten, während Ersteres Drupal-spezifische Einstellungsänderungen an PHPStorm erfordert. Ich denke, es ist wahrscheinlicher, eine Antwort auf Drupal Answers zu finden als auf StackExchange.
mradcliffe
@mradcliffe Ich verwende PHPStorm ausschließlich für die PHP-Entwicklung und das ist nicht meine Erfahrung - Sie benötigen die gleichen Einstellungen für jede Anwendung, die alles über index.php versendet, nicht wahr? Was ist das Drupal-spezifische Bit? (wird diese BTW gerne wieder öffnen, aber wie die anderen wusste ich nicht, dass es Drupal-spezifische Debug-Einstellungen gibt)
Clive
Ich denke, ich dachte, es wäre etwas spezifischer für Drupal als die meisten Projekte, da das Projekt das Modul ist und der Kern nicht im Projektstamm liegt. Ich sehe die Frage, dass SE sich wahrscheinlich mit den Besonderheiten des Drupal-Webstamms befassen muss, um gelöst zu werden (meine Antwort unten ist allgemein gehalten, funktioniert aber nicht für den Benutzer atm). Aber ich denke, wenn es nicht zum Thema gehört, ist es auch nicht zum Thema. Achselzucken
mradcliffe
Hört sich gut an für mich @mradcliffe, Wiedereröffnung
Clive

Antworten:

4

Relevant für PHPStorm 10:

Deaktivieren Sie die Unterbrechung erzwingen in der ersten Zeile, wenn sich ein Skript außerhalb der Projekteinstellung befindet . Dies ist unter Einstellungen zugänglich:

Sprachen & Frameworks> PHP> Debug> Xdebug

Ich deaktiviere auch Force Break in der ersten Zeile, wenn keine Pfadzuordnungen angegeben sind .

mradcliffe
quelle
Das sind 99%. Ich muss immer die Pfadzuordnung festlegen, wenn eine VM verwendet wird, damit die Datei index.php nicht geöffnet wird.
Kevin
Ich versuche es bereits, aber meine index.php erscheint immer noch. Was meinst du mit "Pfadzuordnung"?
Weristsam
Läuft PHP Storm auf dem Host oder dem VM-Gastcomputer? Wenn Sie sich auf dem Host befinden, müssen Sie eine Pfadzuordnung durchführen. Wenn auf dem VM-Gast selbst, ist dies nicht erforderlich.
J. Reynolds
0

Zusätzlich zu der obigen Antwort von @ mradcliffe und während Sie in einer VM arbeiten, haben Sie möglicherweise Ihren Browser im Host-Betriebssystem geöffnet. Daher müssen Sie diese Einstellungen in der php.ini aktivieren (und davon ausgehen, dass Sie xdebug verwenden):

zend_extension="..path to xdebug extension/ext/php_xdebug.dll"

xdebug.remote_enable=1

xdebug.remote_port="9000"

Sie müssen außerdem die festlegen , IDE keyum PHPStormin der gewählten Debug - Erweiterung im Browser. Sie können auch die PHP Storm-Dokumentation konsultieren, um sie als Umgebungsvariable einzurichten, wenn Sie möchten, oder Sie können ein Lesezeichen hinzufügen.

Und um alle Grundlagen abzudecken, müssen Sie hier auf eingehende Verbindungen in PHP Storm achten:

Geben Sie hier die Bildbeschreibung ein

J. Reynolds
quelle