Maguma Studio - freeware editor PHP skriptov
Ak chceme pφsa¥ PHP skripty, potrebujeme na to samozrejme editor. Len₧e ak chcete dobr² program na ·pravu svojich zdrojov²ch k≤dov, tak to pravdepodobne nebude zadarmo. ObzvlßÜ¥ my Slovßci a ╚esi sme na cenu softvΘru dos¥ citlivφ. Na internete som sa sna₧il nßjs¥ program, ktor² by bol dostatoΦne dobr² aj pre pokroΦilejÜφch PHPΦkßrov a na druhej strane by bol aj cenovo v²hodn². Myslφm, ₧e sa mi podarilo nßjs¥ vhodn² kompromis. Volß sa Maguma Studio.
Mo₧no ste poΦuli o programe PHP Coder, ktorΘho v²voj bol zastaven² na verzii 1.75. Vo skutoΦnosti jeho v²voj pokraΦuje pod nov²m menom Maguma Studio. V²robca ho pon·ka vo viacer²ch verzißch - Free, Share, Desktop a Pro. Verzia Free nieje Φasovo obmedzenß a obsahuje vÜetky funkcie ako platenΘ verzie, len₧e niektorΘ pokroΦilejÜie mo₧nosti s· obmedzenΘ. ╧alej budem pφsa¥ o free verzii 1.2.0.
Free verziu Maguma Studio si m⌠₧ete stiahnu¥ v r⌠znych zostavßch:
- Basic (2,6 MB) - len samotn² program Maguma Studio, ₧iadne help s·bory, ₧iadny debugger.
- Standard (11,7 MB) - Maguma Studio, help pre Studio, PHP, HTML a CSS, debugger.
- Complete (18,37 MB) - Maguma Studio, help pre Studio, PHP, HTML a CSS, debugger, plnß inÜtalßcia PHP 4.3.4.
Po spustenφ programu sa vßm zobrazφ dostatoΦne intuitφvne (a myslφm aj ÜtandardnΘ) prostredie. Skladß sa z hlavnΘho okna, v ktorom sa zobrazuje zdrojov² k≤d, a boΦnΘho panelu, v ktorom sa nachßdzaj· r⌠zne funkcie (naprφklad File manager, Class Browser). Ak otvorφte viacej s·borov, mßte k nim prφstup cez tlaΦφtka nad hlavn²m oknom. Myslφm, ₧e screenshot bude staΦi¥ na to, aby si urobili predstavu:
StruΦn² v²ber funkciφ programu
- Mana₧Θr s·borov (File Manager) umo₧≥uje r²chly prφstup k s·borom na ktor²ch pracujete.
- Ftp mana₧Θr (Ftp Manager) pomßha s uploadom s·borov na server (vo free verzii nefunguje FTP Browser).
- Sprßvca projektov (Project Manager) - ak pracujete na vΣΦÜej skupine s·borov (na nejakom projekte), toto je miesto, kde ich m⌠₧ete vÜetky zoskupi¥. (Project Manager je vo free verzii obmedzen², pozri ni₧Üie).
- FarebnΘ odlφÜenie syntaxe pre jazyky PHP, HTML, CSS, Javascript, C/C++, Perl, Java, Pascal, SQL. Dß sa prisp⌠sobi¥ pod╛a ₧elania. Obsahuje funkciu, ktorß vyh╛adß pßrov· zßtvorku {}. U₧itoΦnΘ, ke∩ k≤d obsahuje viacnßsobnΘ vnorenΘ bloky.
- Manußl vo formßte .chm. S·bor s manußlom treba nakopφrova¥ do adresßra "studio" a nastavi¥ sprßvnu jazykov· koncovku v nastaveniach programu. Ke∩ oznaΦφte nejak· funkciu alebo k╛·ΦovΘ slovo a stlaΦφte F1, prenesie vßs to do vyh╛adßvania v manußli.
- Function Insight - zadßte meno internej funkcie PHP + ╛av· zßtvorku a hne∩ sa vßm zobrazφ prototyp funkcie a jej struΦn² popis (program mß tieto funkcie ulo₧enΘ v textovom s·bore, preto sa daj· pridßva¥ aj novΘ). Ak presne neviete, ako sa funkcia volß, napφÜete len jej zaΦiatok a stlaΦφte
Ctrl+medzera
. Studio vßm pon·kne zoznam vÜetk²ch funkciφ, ktorΘ tak zaΦφnaj·. - Auto Complete - tu si m⌠₧ete prida¥ Φas¥ k≤du, ktor· Φasto pou₧φvate. Naprφklad ak napφÜete "func" a stlaΦφte
Shift+medzera
, program vßm na toto miesto vlo₧φ prototyp funkcie. - Class Browser - zobrazuje stromov· Ütrukt·ru vÜetk²ch funkciφ a tried, zatrieden²ch pod╛a toho, v ktorom s·bore sa nachßdzaj·. Tie₧ zobrazφ zoznam vÜetk²ch intern²ch funkciφ PHP pod╛a kni₧nφc, v ktor²ch sa nachßdzaj·.
- Intern² a extern² preview upravovanΘho dokumentu, spustenie vopred nadefinovan²ch programov. Podporuje ladenie skriptov (ÜtandardnΘ prvky ako krokovanie, preskoΦenie).
- RozÜφrenΘ vyh╛adßvanie a nahradzovanie (Search/Replace) nielen v jednom s·bore, ale aj vo vÜetk²ch otvoren²ch dokumentoch alebo vo vÜetk²ch s·boroch v danom adresßri.
- Mo₧nos¥ vytlaΦi¥ zdrojov² k≤d (program obsahuje aj pokroΦilejÜie nastavenia ako a kde sa umiestni text pri tlaΦenφ).
Obmedzenia free verzie:
- Project Manager je limitovan² na 20 s·borov.
- FTP Browser nefunguje.
- Nieje zabudovan² CVS Manager.
- Extren² preview je obmedzen² len na jeden (default) prehliadaΦ.
- Nefunguj· polo₧ky menu Servers (ovlßdanie Apache a MySql priamo z programu).
╚o treba robi¥, aby debugger fungoval
Najprv moja konfigurßcia na ktorej to funguje: W98, Apache 1.3.28, PHP 4.3.1; Maguma Studio 1.2.0 Free Standard. Teoreticky by to malo fungova¥ aj na verzii Basic, no nemßm to odsk·ÜanΘ.
Ke∩ nainÜtalujete Maguma Studio, vÜimnite si, Φi sa vßm objavφ vpravo dole (taskbar) ved╛a hodφn ikona radaru. Je to PHP DBG Listener. Tento program musφ by¥ spusten² (automaticky sa sp·Ü¥a so Studiom).
Nßjdite adresßr, kde ste Studio inÜtalovali, a cho∩te do adresßra "tools\dbg_server" tu sa nachßdza s·bor "php_dbg.dll-x.x.x" priΦom "x.x.x" je Φφslo verzie PHP. Pod╛a vaÜej verzie PHP vyberte tento s·bor a skopφrujte ho do adresßra, kde sa nachßdzaj· ostatnΘ doplnkovΘ kni₧nice pre PHP (naprφklad php_gd.dll). Samozrejme, ke∩ ho nakopφrujete, tak ho aj premenujte na "php_dbg.dll".
Upravte php.ini v textovom editore. Nßjdite miesto kde sa nachßdzaj· rozÜiruj·ce kni₧nice (extensions) a pod ne pridajte riadok "extension=php_dbg.dll" (bez ·vodzoviek). EÜte na koniec php.ini pridajte nasleduj·ce riadky:
debugger.enable_session_cookie = Off
debugger.enabled = On
debugger.fail_silently = On
debugger.ignore_nops = Off
debugger.JIT_enabled = Off
debugger.JIT_host = clienthost
debugger.JIT_level = 3
debugger.JIT_port = 7869
debugger.profiler_enabled = true
debugger.session_nocache = On
debugger.timeout_seconds = 300
Vytvorte PHP skript s funkciou phpinfo(). Spustite tento skript, mal by sa vßm okrem in²ch informßciφ objavi¥ aj ·daj s nadpisom "dbg" + r⌠zne parametre a nastavenia. Spustite Maguma Studio (aj Apache musφ by¥ spusten²), vyberte si s·bor, ktor² chcete krokova¥ a stlaΦte tlaΦφtko "Debug PHP Script using Dbg" alebo polo₧ku menu "Run->Start debug session". Objavφ sa vßm modr² riadok a vy m⌠₧ete pomocou tlaΦφtok krokova¥ program.
Prednosti a nev²hody
Na prßcu v Maguma Studio som si dos¥ r²chlo zvykol. Mß intuitφvne ovlßdanie a celkovo sa s nφm dobre pracuje. Vyhovuje mi ╛av² panel s mno₧stvom funkciφ, hlavne File Manager, pomocou ktorΘho si hne∩ otvorφm s·bor, ktor² potrebujem. Function Insight je u₧itoΦnß pom⌠cka, ktorß uÜetrφ Φas (hlavne programßtorom, ktorφ viac zab·daj·). V∩aka nej nemusφm stßle pozera¥ do manußlu, ke∩ neviem presnΘ poradie prφpadne poΦet parametrov funkcie. ╧alej sa mi pßΦi mo₧nos¥, ₧e m⌠₧em skripty krokova¥ a sledova¥, ako sa menφ hodnota premenn²ch. Najprv mi debugger nechcel fungova¥, ale podarilo sa mi vÜetko sprßvne nastavi¥.
Najviac mi prekß₧alo obmedzenie free verzie v Mana₧Θri projektov (m⌠₧e obsahova¥ najviac 20 s·borov). Ale rieÜenie bolo jednoduchΘ, namiesto Project Managera sa prepnem na kartu File Manager a s·bory si viem r²chlo nßjs¥ a naΦφta¥ z disku. Program si zapamΣtß adresßr, v ktorom pracuje File Manager, a taktie₧ pri Ütarte otvorφ s·bory, ktorΘ boli otvorenΘ pri ukonΦenφ programu. Nieje preto problΘm v Maguma Studio pracova¥ na desiatich s·boroch naraz, ukonΦi¥ program, znovu ho spusti¥ a pokraΦova¥ v prßci.
╧alej mi ch²bala (a eÜte stßle aj ch²ba) funkcia word wrap (automatickΘ zalomenie textu na nov² riadok - u₧itoΦnΘ pre t²ch ktorφ neznßÜaj· horizontßlny scrollbar). Na diskusnom f≤re autori spomenuli, ₧e t·to funkciu sa im zatia╛ nepodarilo zapracova¥ do programu. Namiesto nej sa dß text oznaΦi¥ a zalomi¥ pomocou polo₧ky v menu.
ObΦas sa stane, ₧e sa v programe objavφ nejakß malß chybiΦka (naprφklad farba syntaxe sa z neznßmych d⌠vodov obΦas zmenφ na p⌠vodn·), ale v²voj napreduje dos¥ r²chlo - v novembri som si stiahol verziu 1.1.2, v decembri som u₧ znovu ¥ahal verziu 1.2.0 a v janußri u₧ autori pon·kali upgrade platenej verzie na 1.3.0. D·fam, ₧e to nebud· len prßzdne Φφsla.