문제

I was able to set up a php web app debugger in PHPStorm by simply tying it to my localhost at a specific port and everything works fine. However for that to work I need to first run this command on the shell:

php app/console server:run --env=dev

This works just fine if I set up breakpoints for browsing the site itself or testing api calls from a browser based rest client like postman

However I'm trying to actually set breakpoints for my mobile app (the mobile app sends http calls to the backend app which is a symfony app). Using the web app configuration doesn't work for this one.

Using this tutorial I was able to incorporate the above command line into PHPStorm, so now I can actually run the code using phpstorm command line tools.

My question is: How can I actually tie the debugger to the command line within PHPStorm? right now when I create a built-in web server in PHPStorm it defaults to using the default php interpreter (i.e If I run the code using the built in web server.. I see this in PHPStorm's console:

/usr/local/Cellar/php54/5.4.28/bin/php -S localhost:8000 -t /project/root/directory

What I want instead is something like this:

php app/console server:run --env=dev -S localhost:8000 -t /project/root/directory

Any idea how to do that?

도움이 되었습니까?

해결책

You shouldn't create a run configuration at all, just to click on the listen button:

  1. Configure xdebug to attempt to debug every single script (xdebug.remote_autostart = 1 and xdebug.remote_enable = 1).

  2. Use "Phone handle" icon in IDE to start listening for debug connections (e.g. as described in here)

  3. Launch your php code from anywhere -- XDebug will attempt to debug every incoming request.

Here is an hour long webinar about the subject.

bonus

if you're interested in doing the same thing on vi + xdebug, see this answer.

다른 팁

For anyone coming to this post while following all the details but it's still not working.
PHPStorm debugger for (PHP Built-in Server) somehow is problemmetic with the localhost host URL. Just change it to 127.0.0.1 and watch the magic :)

Host-url

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top