我想安装debug并将其与PhpStorm集成。
我完成了所需的所有步骤。 我将这行添加到php.ini文件中:
zend_extension = "D:\wamp\bin\php\php5.5.12\ext\php_xdebug-2.3.3-5.5-vc11-x86_64.dll"
xdebug.extended_info=1
xdebug.remote_enable=1
xdebug.profiler_enable= true
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9000
这是我创建的调试器截图:
这是关于名为HomeController的Controller的索引方法的断点的截图:
这是php_info()页面上的xdebug部分:
但是每次我按下phpStorm中的Debug Button,主页都会打开,如下所示:
http://localhost:8000/?XDEBUG_SESSION_START=17288
并在调试器选项卡中显示如下消息:
Waiting for incoming connection with ide key '17288'
我研究谷歌并尝试不同的方式但我没有回答。
更新:
新的我意识到通过Xdebug进行调试在普通项目中没有问题(没有laravel)。所以这个问题不能是PHPStorm版本的结果。
例如,当打开页面包含忽略localhost:8000
个断点的breakPoints时,但是当我通过localhost/MyProject/public
以正常形式打开该页面时,调试工作正常。
答案 0 :(得分:1)
即使你已经正确设置了所有内容,也要注意PhpStorm不会在方法声明的界限上破坏(就像你在你的情况下所做的那样)。
另见http://bugs.xdebug.org/view.php?id=618
正如Derick Rethans在上述链接中指出的那样:
PHP在这些行上看不到任何代码,因此不能有任何断点。但是,如果要中断方法调用,则调试协议会实现该调用。我不知道PHPStorm是否提供了这种功能。
因此,将断点移动到方法内的第一个可执行行,然后重试。
答案 1 :(得分:0)
我有同样的问题,终于找到了: 把你的断点放在web.php(laravel 5.X)或route.php(laravel 4.X)上 看到页面“来自xdebug的传入连接”之后,只需单击“接受”,每个事物都变为“确定” https://murze.be/2017/01/xdebug-with-laravel-valet/