homeshoutboximpressum
 

 KDE Debuggen von PHP Skripten mit Quanta und Gubed PHP Debugger


"If debugging is the process of removing bugs, then programming must be the process of putting them in..."

"Wenn Debuggen der Prozess ist bei dem man Bugs entfernt, dann ist Programmieren wohl der Prozess diese einzufügen..."


Debugging PHP scripts with Quanta Plus and Gubed PHP Debugger [english version]


Über dieses Tutorial

Dieses Tutorial geht davon aus, dass Sie ein Webentwickler sind, der dynamische Webseiten mit der PHP Skriptsprache erzeugt. Es wird weiters angenommen, dass Ihr bevorzugtes Betriebssystem Linux/Unix-basierend ist und dass Sie Quanta Plus als integrierte Entwicklungsumgebung bevorzugen. Sie werden lernen wie Sie mit Hilfe des Gubed PHP Debuggers zusammen mit Quanta Plus die Bugs in Ihren PHP Skripten auffinden können.
(senden Sie Feedback an: office[at]very-clever.com)

Die Bildschirmfotos und Anweisungen basieren auf Quanta Plus Version 3.4.0 und Gubed PHP Debugger version 0.1.4
Klicken Sie auf die Bilder um eine größere Version dieser anzuzeigen.


einige nützliche, englischsprachige Bücher
Linux, Apache, MySQL, PostgreSQL, SQL, PHP, HTML, CSS, Open Source, Java, Debugging


Schritt 1: Stellen Sie sicher, dass der Apache Webserver und PHP bereit sind (auf Ihrem lokalen Rechner)

Ich empfehle den Einsatz von XAMPP

"So mancher wird schon die Erfahrung gemacht haben: Ein Apache-Webserver installiert sich nicht so leicht. Noch schwieriger wird es, wenn weitere Pakete wie MySQL, PHP oder Perl dazukommen. XAMPP ist eine Distribution von Apache, MySQL, PHP und Perl, die es ermöglicht diese Programme auf sehr einfache Weise zu installieren."
(zitiert von der XAMPP Homepage)


Schritt 2: Stellen Sie sicher, dass Quanta Plus für den Einsatz bereit ist.


Schritt 3: Installation und Konfiguration von Gubed PHP Debugger

a) laden Sie die neueste Version von Gubed herunter
Achtung: Sie müssen das "Gubed Quanta" Paket verwenden.
z.B.: GubedQuanta3_4.tar.gz abhängig von Ihrer Quanta Plus Version

b) entpacken Sie das gzip-gepackte TAR Archiv



Das Archiv enthält ein Verzeichnis "docs" und eines mit dem Namen "Gubed". Nachdem Sie dieses Tutorial beendet haben, sollten Sie einen Blick auf die Dateien im "docs" Verzeichnis werfen, um mehr über Gubed zu erfahren. (z.B.: wie Sie Gubed ohne Qunata Plus verwenden können)

c) Nehmen wir an, dass Ihr HTTP Server (z.B.: Apache) konfiguriert ist (mittels DocumentRoot Direktive) Dateien aus dem /opt/lampp/htdocs auszuliefern - das ist die Standardeinstellung wenn Sie XAMPP verwenden.

Kopieren Sie das "Gubed" Verzeichnis in Ihr Webverzeichnis (/opt/lampp/htdocs/Gubed)

d) Erstellen Sie eine Datei mit dem Namen 'localsettings.php' im Gubed Verzeichnis, mit folgendem Inhalt:
<?php
  $gbdDebugServer = "localhost";    // Rechner auf dem der Debugserver läuft
  $gbdDebugPort = 8016;             // Portnummer für die Verbindung zum Debugserver
?>
Der Debugserver ist in Quanta Plus integriert. Wenn Sie ein PHP Skript debuggen, dann muss sich der Webserver mit dem Debugserver verbinden. Die Variable $gbdDebugServer spezifiziert den Hostnamen oder die IP Adresse des Rechners auf dem der Debugserver läuft. Der Webserver versucht mit diesem Rechner zu kommunizieren.

Bei diesem Tutorial läuft der Webserver auf dem lokalen Rechner und kann sich deswegen mit dem Debugserver über 'localhost' bzw. 127.0.0.1 verbinden. Falls Sie ein Skript auf Ihrem entfernten Produktionsserver debuggen wollen, dann müssen Sie das 'Gubed' Verzeichnis auf den entfernten Server kopieren und $gbdDebugServer mit der IP Adresse Ihres lokalen Rechners belegen und sicherstellen, dass der mittels $gbdDebugPort spezifizierte Port für Verbindungen geöffnet ist.


Schritt 4: Erstellen Sie ein neues Projekt in Quanta Plus.

a) Erstellen Sie ein neues Verzeichnis 'test' im Basisverzeichnis Ihres Webservers (/opt/lampp/htdocs/test)

b) Erstellen Sie ein neues Projekt in Quanta Plus (Menü: Projekt - Neues Projekt...)



c) Verwenden Sie 'test projekt' als Projektnamen und geben Sie '/opt/lampp/htdocs/test' als Hauptordner an.



d) Klicken Sie zwei mal auf 'Weiter'

e) Klicken Sie auf 'Abschließen'


Schritt 5: Starten des Debugservers für das aktuelle Projekt

a) Öffnen Sie das Fenster für die Projekt-Eigenschaften (Menü: Projekt - Projekt-Eigenschaften)

b) Ändern Sie 'Debugger: Kein Debugger' in 'Debugger: Gubed'
Achten Sie darauf, wie der 'Optionen' Knopf rechts von der Auswahlliste durch diesen Schritt aktiviert wird. Diese Optionen erlauben es Ihnen einige fortgeschrittene Einstellungen des Debuggers vorzunehmen.



c) Klicken Sie auf 'OK'

Durch die Aktivierung des Debugservers bietet Quanta Plus einige neue Funktionen in der Benutzeroberfläche:

1) Debugger Menü: hier können Sie die Funktionalität des Debuggers steuern
2) Debugger Werkzeugleiste: Knöpfe für die wichtigsten Debugger Befehle
3) Variablen - Ansicht: zeigt Informationen zu den überwachten Variablen
4) Breakpunkte - Ansicht: Infos zu den gesetzten Breakpunkten
5) Debuggerausgabe - Ansicht: zeigt die Ausgabe des Debuggers




Schritt 6: Debuggen

a) Erstellen Sie ein neues PHP Skript oder laden Sie ein existierendes.
z.B.: Skript 'beispiel.php' gespeichert in '/opt/lampp/htdocs/test'

b) Öffnen Sie 'http://localhost/Gubed' in Ihrem Webbrowser.



c) Klicken Sie auf den Link 'StartSession'

d) Geben Sie den Pfad des Skriptes an, das Sie debuggen möchten.
z.B.: 'http://localhost/test/beispiel.php'



e) Klicken Sie auf 'Debug'

f) Wechseln Sie zurück zu Quanta Plus

g) Verwenden Sie das Debugger Menü oder die Debugger Werkzeugleist um Ihr Skript zu debuggen.

Um eine Variable zu überwachen verwenden Sie entweder das Menü (Debuggen - Variablen - Variable überwachen) oder markieren Sie eine Variable im Quelltext und klicken mit der rechten Maustaste, um das Kontextmenü aufzurufen.



Wärend des Debuggens finden Sie den Wert, den Typ und die Größe der von Ihnen überwachten Variablen in der Variablen-Ansicht.





Die Debugger Werkzeugleiste

Führt das Skript mit Anzeige jeder ausgeführten Zeile aus (langsam, Einzelschrittmodus).
Führt das Skript ohne Anzeige der ausgeführten Zeile aus (schnell).
Führt die nächste Zeile aus, aber setzt den Einzelschrittmodus in Funktionsaufrufen oder Datei-Includes nicht fort.
Führt die nächste Zeile aus und setzt den Einzelschrittmodus in Funktionsaufrufen oder Datei-Includes fort.
Führt die restlichen Befehle in der aktuellen Funktion/Datei aus und hält danach an.
Übergeht den nächsten auszuführenden Befehl und setzt den folgenden Befehl als den aktuellen.


Falls Sie das Skript nochmal debuggen möchten, dann laden Sie die aktuelle Seite des Webbrowsers erneut, um eine neue Debugger-Sitzung zu starten.

Viel Spaß!


---
Weblinks:
Gubed documentation
PHP-scripts debuggen met Quanta Plus [dutch version of this tutorial by Fabrice Mous]

apparel  baby  beauty  books  camera & photo  cell phones  classical music  computers  dvd  software  kitchen  gourmet food  health & personal care  magazines  musical instruments  office products  outdoor living  pc & video games  popular music  electronics  sporting goods  tools & hardware  toys & games  pet supplies  vhs video  watches & jewelry