Frage

Ich habe xdebug zu debuggen wurde mit und für eine Weile jetzt Code in PHP-Projekten verstehen, und sind gekommen, manchmal in Situationen, wo es gewesen ist unklar, was in PHP vor sich geht.

Ist es möglich, xdebug zu setzen oder gdb, so dass ich in tatsächliche PHP eingebauten Funktionen verfolgen kann?

War es hilfreich?

Lösung

Wenn Sie eine Mac OS X, Solaris oder kürzlich FreeBSD-System mit Ihnen ein wenig dtrace an ihm werfen können. Es kann für alle, auch in handliches kommen zahlreiche „WTF ist PHP zu tun?“ Momente.

Andere Tipps

Ich bezweifle es ist xdebug soll Ihre PHP-Code für das Aufspüren, nicht die Einbauten. Die Einbauten sind davon ausgegangen, fehlerfrei sein (was offensichtlich sind sie manchmal nicht, aber das ist über den Rahmen xdebug).

Sie können immer an der PHP Quelle aussehen, wenn Sie wissen wollen, was die integrierten Funktionen zu tun, aber das ist manchmal ganz schön haarig. Die PHP-Handbuch docs haben dazu gedient, immer mich gut genug, wenn ich wissen will, was sie tun.

Sie können gdb verwenden, um die C-Level-Code zu verfolgen in, vorausgesetzt, Sie haben PHP mit Debug-Symbolen kompiliert. Werfen Sie einen Blick hier für einen Start:

http://derickrethans.nl/phps_segmentation_faults_gdbfu.php

Eine Möglichkeit, die Ausgabe der Zend-Engine zu testen, an den OP-Codes nach innen spähen, können Sie Derick Rethan des VLD (Vulcan Logic Dissasembler) , die auch auf zu sein scheint PECL . . Hinweis: funktioniert nur auf * nix-Systemen (siehe Website für Anforderungen)

Einige Beispiele dieser Opcodes von Debuggen kann auf Sara Golemon Blog gefunden werden < in Artikel / a>, wie Opcodes Verständnis und Wie lang ist ein Stück Schnur? .

Es gibt auch große Google Chrome-Erweiterung PHP Console mit pHP-Bibliothek , die erlaubt:

  • Sie können Fehler und Ausnahme in Chrome JavaScript-Konsole und in Benachrichtigung Pop-ups.
  • Dump jede Art Variable.
  • Ausführen von PHP Code remote.
  • Zugriff durch ein Passwort schützen.
  • Gruppenkonsolenprotokolle auf Anfrage.
  • Linie in Ihrem Texteditor
  • Jump-Datei auf Fehler.
  • Kopieren Fehler / Debug-Daten in die Zwischenablage kopieren (für Testgeräte).

Empfehlung an alle!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top