pregătire
Cum Debugging PHP cu XDebug Lucrări în IDE NetBeans
Când executați XDebug de la IDE NetBeans, executarea programului PHP pauze la fiecare linie în cazul în care ați stabilit un punct de întrerupere. În cazul în care executarea programului este oprita temporar, XDebug poate prelua informații despre starea actuală a programului, cum ar fi variabile de program. Practic, acest lucru înseamnă că următorul flux de lucru:
- Setați un punct de întrerupere în fiecare rând în care executarea codului sursă PHP trebuie să se întrerupă.
- Începeți o sesiune de depanare.
- Când linia a ajuns la un punct de întrerupere, executa o linie de script de linie, apăsând F7 și F8. Urmăriți starea aplicației în ferestrele depanator.
- Închideți sesiunea de depanare.
Pentru un flux de lucru detaliat folosind XDebug cu IDE NetBeans, vezi Debugging sesiune.
opțiuni de depanare
Parametrii NetBeans IDE includ file pentru a modifica anumite setări implicite pentru PHP depanare. Pentru a accesa aceste opțiuni, du-te la Tools ( "fonduri")> Opțiuni ( "Options") (NetBeans> Preferințe ( "Opțiuni") pe Mac), selectați setările PHP, apoi selectați fila Debugging ( "debug").
Notă. fila „Debug“ a fost pus în aplicare în versiunea IDE NetBeans 7.1. În versiunile anterioare ale NetBeans tab-ul „General“ sunt opțiunile de depanare PHP. Nu toți parametrii de versiunea 7.1 disponibile în versiunile anterioare.
Următoarele setări pot fi modificate în acest panou:
Notă. Întrebați output_buffering = Dezactivat în fișierul php.ini utilizat. diferite scenarii constatări vor apărea pe ecran fereastra cu o întârziere.
In acest tutorial, nu este nevoie de a schimba oricare dintre aceste setări. Dacă se dorește, se poate face pentru a permite punctelor de observare.
Utilizarea barei de instrumente debugger
Bara de instrumente oferă posibilitatea de a efectua următoarele acțiuni:
Setarea Breakpoints
Valori critice în fișiere pentru a spune debugger unde să se oprească în timpul execuției.
Important! XDebug pentru utilizare în codul PHP necesar pentru a seta puncte de întrerupere.
Pentru a elimina un punct de întrerupere, faceți clic pe marcatorul punct de întrerupere ().
De asemenea, puteți dezactiva temporar breakpoint. Pentru a face acest lucru, faceți clic dreapta pe o insignă breakpoint și deselectați „breakpoint“> ✔'Vklyucheno“. Întreruperi breakpoint în starea OFF, după care token-ul este alocat gri () și afișate pe marginea din stânga.
ferestre debugger
Toate ferestrele depanator pot fi accesate din IDE selectând „Fereastră> Debugging“. După activarea sesiunii de depanare, puteți merge la fereastra de depanare.
Window „sesiuni“
În „sesiuni“ afișează sesiuni de depanare care sunt active în acest moment. Când PHP depanare sesiune de înregistrare de start pentru PHP debugger, puteți vedea în fereastra Sesiuni ( „sesiuni“).
IDE NetBeans, de asemenea, vă permite să ruleze mai multe debuggeri sesiuni. De exemplu, puteți depana simultan un proiect Java si proiectul PHP. În acest caz, două sesiuni pot fi determinate, sunt enumerate în fereastra Sesiuni ( „sesiuni“).
Sesiunea curentă (de exemplu, sesiunea pe care le puteți controla cu ajutorul barei de instrumente depanator) este pictograma mai proeminent () este marcat. Pentru a comuta sesiuni, dublu-clic pe sesiune pe care doriți să faceți curent, sau faceți clic dreapta pe sesiune, care nu este curent și selectați „Marca curentă“.
Notă. Se recomandă utilizarea tratamentelor de comutare în cazul în care sesiunea curentă a fost amânată.
Puteți, de asemenea, clic dreapta pe fereastra pop-up pentru a termina sesiunea (faceți clic dreapta și selectați „End“) sau de a comuta între depanare firul curent sau toate firele în sesiunea (faceți clic dreapta și selectați „Zona“> „Debug toate subiectele“ sau 'Debug fluxul de curent').
Window „Variabile“
Când debugger este suspendat, în fereastra Variabile ( „variabilă“) afișează variabilele ferestrei obiectului curent pentru cadrul selectat în stiva de apel. Nodul este afișat pentru fiecare variabilă în fereastra curentă. Superglobals grupate într-un nod separat.
Pe măsură ce deplasați valoarea codului unor variabile locale se pot schimba. Astfel de variabile locale în „variabilele locale“ sunt afișate cu caractere aldine. De asemenea, puteți da clic direct la coloana „Value“ și schimba manual valorile variabilelor.
Fereastra „ceasuri“
Setarea watchpoints încalcă performanță stabilă XDebug și nu este recomandată. În mod implicit, punctul de observație este dezactivat. Cu toate acestea, în cazul în care punctul de observație este încă să fie instalat, a se vedea. Utilizarea de puncte de observație suplimentare.
Fereastra "Call Stack"
Puteți face dublu clic pe un cadru din stiva de apel pentru al selecta, iar apoi ia în considerare valorile variabilelor sau expresii pentru un anumit cadru în variabilele ferestre ( „Variable“) și ceasuri ( „puncte de observare“).
Window „Fire“
Window fire ( „flow“) indică un script PHP este activ în acest moment și dacă se execută sau există un punct de întrerupere. În cazul în care script-ul este executat, trebuie să mergeți la browser-ul pentru a interacționa cu ea.
Window „Surse“
În „surse“ afișează toate fișierele și script-uri încărcate pentru sesiunea de depanare. Surse În prezent, fereastra ( „cod sursă“) nu funcționează pentru proiecte PHP.
Window "Breakpoints"
Din fereastra Concentrații puteți activa sau dezactiva breakpoints în fereastra de context ( „context“). Puteți crea, de asemenea, grupuri de puncte de întrerupere.
Sesiunea de depanare
Următoarea procedură este o secvență de acțiuni efectuate în cadrul sesiunii tipic de depanare.
Acum puteți efectua o verificare suplimentară pentru depanare.
După finalizarea programului de depanare ferestrele sunt închise.
EXEMPLU sesiune de depanare
Folosind expresii ceas suplimentare
În scopul de a sprijini punerea în aplicare a programului, puteți defini o expresie suplimentară ceas. Acest lucru poate contribui la detectarea erorilor.
Atenție! Configurarea puncte de observație suplimentare cu stabilitatea XDebug muncă. În mod implicit, punctul de observație în opțiunile de depanare sunt dezactivate.
- Actualizați codul așa cum este prezentat mai jos (înlocuiți „plus“ în semnul „minus“): Se poate presupune că aceasta este o consecință a unui cod incorect de a scrie, dar este nevoie de fapt de mai mult timp pentru a calcula suma.
- Selectați 'Debug'> 'Crearea de observare' sau apăsați Ctrl / ⌘-Shift-F7. O fereastră se va deschide „New Watch“.
- Introduceți următoarea expresie și faceți clic pe „OK“. Noua expresie apare în „ceasuri“.
- Începeți o sesiune de depanare. După oprirea debugger se va opri la linia specificată: compară valoarea expresiei în fereastra „ceasuri“, cu o valoare de $ rezultat în fereastra „variabile locale“. Aceste valori trebuie să fie la fel, dar ele sunt diferite.
Folosind o combinație de PHP și HTML
Puteți depana codul care conține atât blocuri în HTML și PHP limbi. În exemplul sesiunii de depanare secțiunea valori EXEMPLU sunt codificate. Extindeți codul prin adăugarea formei de intrare HTML pentru introducerea valorilor.- Adăugați următorul cod HTML pe bloc