PhpStorm a Nette – jak otevřít Sandbox?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
David Grudl
Nette Core | 8082
+
0
-

Chtěl jsem vyzkoušet PhpStorm, ale hned po instalaci se ukázalo, že tenhle editor tvoří programátoři pro programátory a je tedy normálnímu člověku naprosto nesrozumitelný ;-) Nepodařilo se mi ani po hodině přijít na to, jak otevřít Sandbox – můžete mi pomoci?

  • sandbox mám třeba v adresáři w:\sandbox
  • document root je tedy v w:\sandbox\www
  • a URL je např. http://sandbox.l

Jak spustit debugování?


A ještě snad triviálnější příklad. Uvnitř sandboxu mám například soubor bin/create-user.php. Jak jej mohu začít krokovat?

Michal Vyšinský
Člen | 608
+
+5
-

Sice to nesouvisí s Nette ale odpovím :)

Projekt otevřeš tak, že dáš „File“ → „Open“ a najdeš svoji složku. Na debugování používám doplněk do chromu (https://chrome.google.com/…kmdgkmoaaaoc), kterým aktivuji xdebug session a v PhpStormu zapnu naslouchání na xdebug port – pak jen přidám break point a je to.

Editoval Michal Vyšinský (1. 10. 2014 15:49)

David Grudl
Nette Core | 8082
+
0
-

Otevřu složku a co dál? (Xdebug i doplněk mám)

newPOPE
Člen | 648
+
+1
-

@DavidGrudl

  1. nastav si xdebug:

xdebug.remote_autostart = On
xdebug.remote_enable = On

  1. V Storme je taka (magicka) ikonka sluchatka zelena http://cl.ly/…3Q3B0D343P1K
  2. Nastav breakpoint, refresh a fičíš :)

Rozsirenia browseroch su na nic ked potrebujes debugovat ine zariadenia (telefony, raspberry, …)

Keby nieco tak daj vediet.

Editoval newPOPE (1. 10. 2014 16:02)

David Grudl
Nette Core | 8082
+
0
-

Přes Port 9000 is busy, když kliknu na ikonku sluchátka, se nejsem schopen dostat…

Milo
Nette Core | 1283
+
0
-

A ještě snad triviálnější příklad. Uvnitř sandboxu mám například soubor bin/create-user.php. Jak jej mohu začít krokovat?

V seznamu souborů projektu pravým myšítkem (nebo z menu Run), Debug ‚file.php‘.
Někdy se objeví debugovat jako Javascript, nebo PHP.
Aby se debugger zastavil, musí být nastavený breakpoint (klikem vedle čísla řádku v souboru).

Byl to boj, začít. @FilipProcházka by mohl vypsat nějaké to školení, ne? :)

Jan Tvrdík
Nette guru | 2595
+
0
-

David Grudl: A co ti na tom portu 9000 běží? (netstat -b -a)

Milo
Nette Core | 1283
+
0
-

David Grudl napsal(a):

Přes Port 9000 is busy, když kliknu na ikonku sluchátka, se nejsem schopen dostat…

Settings → PHP → Debug. Změnit port např 9001, v php.ini xdebug.remote_port=9001.

newPOPE
Člen | 648
+
0
-

@JanTvrdík urcite skype :D

David Grudl
Nette Core | 8082
+
0
-

Díky moc za rady, už se tím úspěšně protloukávám.

Na tom portu 9000 jsem měl PHP (--bindpath) jako službu pro nginx. Takže výpis z netstat mě mátl.

David Kudera
Člen | 455
+
+2
-

Mě s tímhle ještě napadají články od @FilipProcházka, které mi na začátku taky dost pomohly. Tady a tady.

A hlavně mi přijde super, že se vlastně nemusí pak nic řešit. Jen kliknu třeba na nějaký test pravým, dám debug a už to jede

Filip Procházka
Moderator | 4668
+
0
-

Já bych řekl, že v článku Debuggujeme s PhpStormem to mám popsané docela dobře, ne? Doplňky jsou nahovno, lepší je remote_autostart.

enumag
Člen | 2118
+
0
-

Taky jsem se zprovozněním měl potíže tak sem postnu co mi nakonec pomohlo.

Postupoval jsem dle https://confluence.jetbrains.com/…and+PhpStorm i https://filip-prochazka.com/…s-phpstormem a stále mi to nechtělo fungovat. V logu xdebugu pořád byly tyhle zprávy:

Log opened at 2015-02-05 16:10:57
I: Checking remote connect back address.
I: Remote address found, connecting to 127.0.0.1:9000.
E: Time-out connecting to client. :-(
Log closed at 2015-02-05 16:10:57

Tak jsem v php.ini i PHPStormu zkusil změnit port na 9001 a odkomentovat xdebug.remote_host=127.0.0.1. Furt nic.

Pak jsem na stackoverflow náhodou objevil že xdebug.remote_host="localhost" a xdebug.remote_connect_back=On se navzájem tlučou, tak mne napadlo že se 127.0.0.1 je to možná stejný případ. Když jsem xdebug.remote_host=127.0.0.1 zakomentoval tak se to najednou rozběhlo. :-)