Willkommen arrow Softwareentwicklung arrow PHP arrow PHP debuggen
Michael Guppenberger
 
 
 
PHP Webapplikationen debuggen PDF Drucken E-Mail

Als "Java-verwöhnter" Entwickler scheint man bei der Entwicklung von PHP-Webapplikationen zunächst einen Schritt zurückzugehen: anstatt ausgefeilter Debugging- und Profilingtechniken verwendet man zunächst doch wieder das "gute alte Echo-Debugging". Dass dies nicht sein muss, zeigt der folgende Artikel, in dem ich die Einrichtung einer komplett debugfähigen Entwicklungsumgebung für PHP unter Windows auf Basis von Eclipse, XAMPP, PHP und Firefox beschreibe.

Installation von Eclipse

Zunächst ist eine lauffähige Installation von Eclipse notwendig. Die in diesem Beispiel beschriebene Entwicklungsumgebung basiert auf Eclipse 3.3 (Europa), erhältich unter http://www.eclipse.org. Die genaue Installation ist dort ausführlich beschrieben, daher wird hier nicht darauf eingegangen.

Installation der Eclipse PHP Development Tools (PDT)

Das PDT-Paket stellt ein umfangreiches Toolset für die Entwicklung von PHP Applikationen dar. Neben einem sehr guten PHP-Editor mit Syntax-Highlighting, Code-Folding etc. ist auch eine Schnittstelle zu PHP-Debuggern enthalten.

Zur Installation wird über das Menü Help -> Software Updates -> Find and Install  der Installationsassistent gestartet. Nach Auswahl von Search for new features to install muss eine neue Site über "New Remote Site" angelegt werden:

Image
Image
Update Location für PDT

Im folgenden Dialog wählt man das Eclipse-PDT-Feature komplett aus und führt die Installation zum Ende.

Achtung: Die PDT-Tools benötigen als Voraussetzung die Eclipse Web Standard Tools. Diese sind unter http://www.eclipse.org/webtools/wst/main.php erhältlich und müssen vor Installation der PDT-Tools installiert werden.

Installation des PDT-Debugtools von Zend

Damit Eclipse einen PHP-Debugger steuern kann, muss das entsprechende Plugin installiert werden. Vorgehensweise wie beim PDT-Plugin, allerdings mit folgender (neu anzulegender) Remote Site:

Image
Image
Update Location für das PDT Debug Plugin

Installation von XDebug2 in XAMPP

Um PHP-Applikationen debuggen zu können, muss der PHP-Interpreter um die entsprechende Funktionalität erweitert werden. Dazu lädt man sich zunächst die zur PHP-Version passende Version von XDebug2 von der Projekthomepage unter http://www.xdebug.org/ herunter. 

Diese DLL wird dann ins Extension-Verzeichnis von PHP kopiert also beispielsweise nach

	c:\programme\xampp\php\extensions

Die Extension muss in PHP noch konfiguriert werden. Dazu in der php.ini folgenden Abschnitt einfügen, um Remote-Debugging von localhost aus zuzulassen:

[Zend]
zend_extension_ts = "C:\Programme\xampp\php\extensions\php_xdebug-2.0.0-4.4.6.dll"
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.idekey=key
xdebug.remote_host=127.0.0.1

Nach einem Neustart von Apache sollte das Debug-Modul dann aktiv sein, erkennbar am entsprechenden Eintrag in der Ausgabe von phpinfo().

Installation von XDebug Helper

Um PHP Webapplikationen zu debuggen, muss jeder URL eine entsprechende Informationen über die aktive Debug-Session mitgegeben werden. Dies funktioniert mit Eclipse für eine einzelne Seite, jedoch über mehrere Seiten hinweg - was insbesondere zum Debuggen von POST- und GET-Requests sehr wichtig ist.

Dies erreicht man jedoch mit einem kleinen Tool, das als Firefox-Plugin läuft und diese Debug-Information automatisch an jeden Request anhängt. Dazu installiert man den XDebug Helper als Firefox-Plugin, erhältlich hier

Nach der Installation und Firefox-Neustart muss das Plugin noch konfiguriert werden - dazu wird in den Einstellungen des Add-Ons noch der vorher vergeben idekey (hier: "key") eingetragen.  

Einrichten des PHP-Projekts in Eclipse

Zuletzt wird noch das Eclipse-Projekt, das zu debuggen ist, eingerichtet. Dazu muss zunächst ein Projekt als PHP-Projekt erstellt werden. (Achtung: Soll ein bereits vorhandenes Projekt, das nicht mit PDT erstellt wurde, debugged werden, muss es als PDT-Projekt neu angelegt und dann mit einer Kopie der Sourcen gefüllt werden.)

Dazu muss zunächst die allgemeine PHP-Debug Einstellung auf XDebug gesetzt werden:

Image
Image
Eclipse-Einstellungen

Danach wird eine Debug-Konfiguration angelegt, in der die erste Seite der zu debuggenden Applikation eingetragen wird:

Image
Image
Debug-Konfiguration

Hier noch die erweiterten Debug-Einstellungen: 

Image
Image
Erweiterte Einstellungen der Debug-Konfiguration
 

Damit kann dann die Applikation aus Eclipse heraus gestartet werden (Browser öffnet sich) und - bspw. mit Hilfe von Breapoints etc. - die Anwendung debugged werden.

Viel Erfolg! 


   
Quote this article in website
Favoured
Print
Send to friend
Related articles
Save this to del.icio.us

Benutzerkommentare  RSS feed Kommentar
 

Durschnittliche Benutzerbewertung

 
Kommentar Sprache: Deutsch (0), English (0)

Fügen Sie Ihren Kommentar hinzu
Name
E-mail
Titel  
 
Kommentar
 
Verfügbare Zeichen: 600
   Benachrichtige mich über nachfolgende Kommentare
  Mathguard Sicherheitsfrage:
XJJ         EAX      
I 4    S    L 5   SSM
K 9   B9R   9 O      
E X    5    W Y   JN5
CSK         IRC      
   
   

Keine Kommentare vorhanden



mXcomment 1.0.5 © 2007-2010 - visualclinic.fr
License Creative Commons - Some rights reserved
 

© 2010 Michael Guppenberger
Joomla! is Free Software released under the GNU/GPL License.
Template Design by funky-visions.de