2007. július 12., csütörtök

PHP környezet így. Eclipse PDT Zend package

PHP kódolás zend módra. Debugerrel meg ilyesmi. Nekem bejött. Mikor már a kódod nem alkalmas a jó öreg echo-zós debugolásra, felmerül a kérdés, nade akkor most hogyan?
Alapértelmezésben létezik az Eclipse PDT, ami PHP Development Tools, és remek IDE-nek bizonyul a fejlesztéshez, de még mindig nem tökéletes. A debugolás pl nincs megoldva (ez persze nem teljesen igaz). Ekkor jön be a képbe a Zend féle módosított PDT, ami tartalmazza a Zend debuggerét, és a szerveren helyesen belőtt Zend debugerrel, állati jól használható.

Ez mit jelent? Egyszerű, fogjuk a kódunkat, bele vágunk egy breakpoint-ot, majd megnyomjuk a debug gombot, és elkezd futni a script, majd megáll a breakpoint-nál. Meg tudjuk nézni, hogy a változóink út közben milyen értékeket vettek fel, végig lépkedhetünk a függvényeinken (az egész kódon akár) stb. stb. Tehát valóban nagyon hasznos tud lenni.

Vágjunk is bele, töltsük le innen: http://downloads-source.zend.com/pdt/all-in-one/ az IDE.
Figyeljünk arra, hogy a letöltött fájl megfeleljen az általunk használt OS-nek (Linux, Mac, Windows illetve 32 vagy 64 bit)
(Platformonként /apró részletekben/ más lehet a beállítása mind az IDE-nek, mind pedig a szerver oldali debugernek, de erre most nem biztos, hogy kitérek, én most a Linux-os beállításokat írom le.)

A szerver oldali extensiont (kiterjesztést) innen tölthetjük le: http://downloads-source.zend.com/pdt/server-debugger/
(Azt remélem magadtól is levágod, hogy az IDE debuggere önmagában nem fog menni a szerver oldali extension nélkül.)

Nos először a fentiek fényében lőjjük be a debug extension-t apache alá. Ehhez szerkesszük a php.ini állományt.
(ugye az apache már megy, azt nem írom le, hogyan kell működésre bírni.)

Az elérési út nálam pl.: /etc/php5/apache2/php.ini
(Figyelünk arra, hogy ne a PHP CLI ini-jét szerkesszük. /etc/php5/cli/php.ini)

Ajánlják sok helyen, hogy az implicit_flush direktívát állítsuk On állapotba, de meg kell jegyeznem, hogy nekem enélkül is működik a dolog. Ellenben ha már beállítottunk magunknak xdebug-ot, vagy GDB-t, akkor azoktól szabaduljunk meg.
Most lássuk mit is kell a fájl (pl) végére írni:
[Zend]
zend_extension=/home/nullstring/ext/Zend/ZendDebugger.so
zend_debugger.allow_hosts=127.0.0.1
zend_debugger.expose_remotely=always
Windowsban annyi a különbség, hogy a zend_extension -t ki kell egészíteni egy _ts -el, azaz zend_extension_ts és értelem szerűen a letöltött wines dll útját kell megadni elérés képpen pl C:\Zend\ZendDebugger.dll
Ha mindez megvan, újraindítjuk az apache-ot jól, és megnézzük a phpinfo-t. Akkor csináltuk jól, ha a lentihez hasonlóan megjelenik az info, hogy biza zend debuggerrel van felszerelve az indián.



Most lássuk az eclipse oldaláról, hogy mit is csináltunk.




Itt már benne vagyunk a kódunk lelkében futás közben. :)

Nincsenek megjegyzések:

Megjegyzés küldése