Heim  >  Artikel  >  Backend-Entwicklung  >  Legen Sie Haltepunkte fest, um PHP-Quellcode in Zend Studio 125 zu debuggen und auszuführen

Legen Sie Haltepunkte fest, um PHP-Quellcode in Zend Studio 125 zu debuggen und auszuführen

WBOY
WBOYOriginal
2016-07-29 09:15:08989Durchsuche

Dieser Artikel löst das folgende Problem: Nach dem Setzen eines Haltepunkts in Zend Studio und dem anschließenden Debuggen und Ausführen (Debug As PHP Web Application) stellte ich fest, dass die Website normal lief, und der Haltepunkt funktionierte überhaupt keine Wirkung entfalten.

Der Haltepunkt wird nicht wirksam. Der Hauptgrund ist, dass der Debugger nicht richtig konfiguriert ist.

Tatsächlich kommt Zend Studio bereits mit dem ZendDebugger-Debugger und wurde in die integrierte PHP-CLI-Umgebung integriert. Um jedoch das PHP-Programm des Webservers zu debuggen, das wir selbst installiert haben, müssen wir zusätzliche Konfigurationsarbeiten durchführen.

Ändern Sie php.ini und fügen Sie zend_extension und andere Einstellungen hinzu

Fügen Sie die folgenden Einstellungen am Ende von php.ini hinzu:

<code>zend_extension = "C:<span>\Program</span> Files<span>\Zend</span><span>\Zend</span> Studio 12.5.1<span>\plugins</span><span>\com</span>.zend.php.debug.debugger.php56.win32_12.5.0.v20150415-1131<span>\resources</span><span>\php</span>56<span>\ZendDebugger</span>.dll"
zend_debugger.allow_hosts = "127.0.0.1"</code>

Der Wert von zend_extension ist der Zend Debugger-Plug-in Der vollständige Pfad der Datei befindet sich im Zend Studio-Installationsverzeichnis. Sie können ihn finden, indem Sie nach ZendDebugger.dll suchen.
Beachten Sie, dass es im Zend-Installationsverzeichnis zwei Kopien dieser DLL gibt, eine für PHP 5.6 und die andere für PHP 5.5. Sie müssen diejenige auswählen, die mit Ihrer PHP-Installationsversion übereinstimmt. (Die offizielle Website von Zend bietet auch Zend Debugger zum separaten Download an.)

Nachdem Sie die php.ini-Datei geändert und auf der Festplatte gespeichert haben, starten Sie bitte PHP (php-cgi, PHP-FPM usw. oder den Webserver) neu ), um sicherzustellen, dass php.ini neu geladen wird.

Hinweis: ZendDebugger ist die VC11 NTS-Version (Non Thread Safe) und muss mit der NTS-Version von PHP verwendet werden. Mit anderen Worten: Die TS-Version von PHP kann ZendDebugger nicht verwenden (das Laden schlägt fehl). Anweisungen zu TS- und NTS-Versionen finden Sie auf der offiziellen PHP-Website.

Platzieren Sie dummy.php im Stammverzeichnis des Webservers

Erstellen Sie eine Datei dummy.php im Ngninx-Dokumentstammverzeichnis html mit folgendem Inhalt:

<code><?php
<span>@<span>ini_set(<span>'zend_monitor.enable'</span>, <span>0</span>)</span>;</span><span>if(@<span>function_exists(<span>'output_cache_disable'</span>)</span>)</span> {
    <span>@<span>output_cache_disable()</span>;</span>
}
<span>if(<span>isset($_GET[<span>'debugger_connect'</span>])</span> && $_GET[<span>'debugger_connect'</span>] == <span>1</span>)</span> {
    <span>if(<span>function_exists(<span>'debugger_connect'</span>)</span>)</span>  {
        <span>debugger_connect()</span>;
        <span>exit()</span>;
    } else {
        echo "No connector is installed.";
    }
}</code>

Debuggen starten

Klicken Sie im Zend Studio-Projektverwaltungsfenster mit der rechten Maustaste auf index.php, klicken Sie auf das Auswahlmenü Debuggen als -> PHP Web Anwendung und bestätigen Sie, um den Debugging-Prozess zu starten. Der Debugger unterbricht in der ersten Zeile des PHP-Codes. Sie können auch die Tastenkombination Strg + Umschalt B verwenden, um andere Haltepunkte zu setzen. Wenn der Haltepunkt wie erwartet unterbricht, bedeutet dies die obige Konfiguration ist erfolgreich. Urheberrechtserklärung: Dieser Artikel ist ein Original des Bloggers Liigo und darf nicht ohne Genehmigung reproduziert werden.

Das Obige stellt vor, wie man Haltepunkte zum Debuggen und Ausführen von PHP-Quellcode in Zend Studio 125 setzt, einschließlich der relevanten Aspekte. Ich hoffe, es wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn