PHP-scripts debuggen met Quanta Plus
Auteur: Ewald Kicker
Herziening 0.7
Vertaald door Fabrice Mous
Licenties en verdiensten
Deze howto legt uit hoe je PHP-scripts kunt debuggen met Quanta Plus en de Gubed PHP Debugger.
"If debugging is the process of removing bugs, then programming must be the process of putting them in..."
Deze howto gaat ervan uit dat je een webdeveloper bent die dynamische webpagina's ontwikkelt met de scripttaal PHP in combinatie met Quanta Plus.In deze howto leer je de Gubed PHP-debugger te gebruiken in combinatie met Quanta plus om bugs op te sporen in je PHP-scripts. Stuur eventuele feedback in het Engels naar office[at]very-clever.com of naar website@kde.nl (en dat mag in het Nederlands).
De schermafdrukken en instructies zijn gebaseerd op Quanta Plus versie 3.4.0 en de Gubed PHP Debugger versie 0.1.4. Klik op de afbeeldingen om een grotere versie te zien.
Stap 1: Zorg ervoor dat PHP en Apache draaien (op je lokale machine)
Stap 2: Zorg ervoor dat Quanta Plus klaar is voor gebruik
Stap 3: Installatie en configuratie van de Gubed PHP Debugger
Download de laatste versie van Gubed.
LET OP: Je moet het pakket "Gubed Quanta" downloaden, dus GubedQuanta3_4.tar.gz, afhankelijk van je versie van Quanta Plus
Pak het gezipte archief-bestand uit.

Dit archief bestaat uit de directory "docs" en een map met de naam "Gubed". Lees, nadat je deze tutorial hebt doorgelezen, de bestanden in de directory "docs" om meer informatie te vinden over Gubed (Hoe je Gubed kunt gebruiken zonder Quanta Plus)
Laten we ervan uitgaan dat je HTTP-server (Apache) is geconfigureerd (DocumentRoot directive) om bestanden aan te bieden vanaf
/opt/lampp/htdocs.Kopieer de map "Gubed" naar je web-directory, bijvoorbeeld
/opt/lampp/htdocs/Gubed- Maak een bestand aan "localsettings.php" binnen de map "Gubed"
dat de volgende inhoud heeft:
<?php $gbdDebugServer = "localhost"; // Vertelt de webserver waar het de // debug-server kan vinden. $gbdDebugPort = 8016; // Poort welke gebruikt wordt om te // verbinden met de debug-server. ?>
De debug-server is ingebouwd in Quanta Plus. Wanneer je een PHP-script
debugged dan zal je webserver contact moeten maken met je debug-server. De
variabele $gbdDebugServer geeft de hostnaam of het ip-adres aan van de
host-machine waarop de debug-server draait. De webserver probeert te
communiceren met deze host.
In deze tutorial gaan we ervan uit dat de webserver op een lokale machine
draait en dat daarom de debug-server via "localhost" of 127.0.0.1
aangesproken kan worden. Als je een script wilt debuggen dat op een
niet-lokale serverstaat (bijvoorbeeld een productie-machine) dan zal je
de directory "Gubed" moeten kopiëren naar deze niet-lokale server waar je
dan de variabele $gbdDebugServer moet laten verwijzen naar het IP-adres
van je lokale machine en dan moet de poort die is aangegeven in
$gbdDebugPort open moeten staan voor verbindingen.
Stap 4: Maak een nieuw project aan in Quanta Plus.
Maak de map
testin de document root van je webserver, bijvoorbeeld in/opt/lampp/htdocs/test.Maak een nieuw project aan in Quanta Plus (menu: Project -> Nieuw Project...)
Vul een projectnaam in
testprojecten de hoofdmap stel je in op/opt/lampp/htdocs/test, of ergens anders als de root van je webserver anders isKlik twee keer op Volgende
Klik op Voltooien
Stap 5: Start de debug-server voor het huidige project
Open het venster Eigenschappen van het project (menu: Project -> Projecteigenschappen)
Verander de optie
Debugger: Geen debuggerinDebugger: GubedMerk op dat de knopOptiesaan de rechterkant van de keuzelijst beschikbaar wordt door deze stap. Hier kun je wat geavanceerde opties van de debugger veranderen.Klik op
OK
Merk op dat wanneer de debug-server is aangezet Quanta Plus nu extra functies aanbiedt via de grafische interface:
- Menu Debugger: Dit stelt je in staat om de funtionaliteit van de debugger in te stellen
- Werkbalk Debugger: voorziet in snelkoppelingen voor de belangrijkste commando's
- Dock Variabelen: toont de inhoud van de geobserveerde variabelen
- Dock Breekpunten: geeft het breekpunt aan
- Dock Debuguitvoer: toont de uitvoer van de debugger

Stap 6: Debugging
Maak een nieuw PHP-script aan of laad een bestaand scriptvoorbeeld, zoals het script 'voorbeeld.php' bewaard in
/opt/lampp/htdocs/test.Open
http://localhost/Gubedin je webbrowser.Klik op de link
StartSession.Vul het pad in van het script dat je wilt debuggen voorbeeld:
http://localhost/test/voorbeeld.php
Klik op
DebugGa terug naar Quanta Plus
Gebruik het debugger-menu of de debugger-taakbalk om je script te debuggen Om een variabele te monitoren kun je het menu (Debug -> Variabelen -> Variabele opserveren) gebruiken of je kunt een variabele markeren in de broncode.
Tijdens het debuggen kun je de waarden zien, type en grootte van de variabelen in het dock Variabelen:

De werkbalk Debugger
voert script uit en toont daarbij iedere regel tijdens de
uitvoering aan de gebruiker (langzaam). Wanneer er op dat moment geen script wordt
gedebugged, dan zal deze modus opgestart worden bij het eerstvolgende script
voert het script uit en hier wordt niet iedere regel getoond
tijdens de uitvoering (snel). Wanneer er op dat moment geen script wordt gedebugged,
dan zal deze modus opgestart worden bij het eerstvolgende script
voert de volgende regel uit in de uitvoering van het script
maar het voert daarbij geen functies uit of include-bestanden
voert de volgende regel uit in de uitvoering van het script
en voert daarbij functies en include-bestanden uit
voert de rest van de commando's uit in de huidige functie
of het huidige bestand en pauzeert wanneer dit is beeindigd
(wanneer het een hoger niveau heeft bereikt in de backtrace)
slaat de huidige commando over binnen de uitvoering en
maakt van het volgende commando het huidige commando
Meer informatie
http://www.hoernerfranzracing.de/kde/gubed.html
http://invisiblepixels.org/progs/quanta.html
Licenties en verdiensten
Deze howto is met toestemming overgenomen vanaf de website van de auteur, Ewald Kicker. Ewald heeft ons volledige toestemming gegeven om aanpassingen te maken op dit document.
Het is toegestaan dit document te kopiëren, te verdelen en/of te wijzigen onder de voorwaarden van de GNU vrije-documentatielicentie, versie 1.1 of een latere versie gepubliceerd door de Free Software Foundation; zonder invariante paragrafen, zonder vooromslagteksten, en zonder achteromslagteksten.
Over deze site | Laatst gewijzigd: $Date: 2005/05/14 23:02:08 $ door: $Author: fab $



