【发布时间】:2019-03-14 18:28:50
【问题描述】:
我在调试 PhpStorm 时遇到了一个奇怪的问题,我使用的是 XAMPP + PhpStorm + Xdebug。
我在下面写代码并设置4个断点
<?php
$a=1;
$b=2;
$c=$a+$b;
echo $c;
点击监听按钮和调试按钮后,Chrome访问http://localhost/index.php,到达第一个断点。
那么奇怪的现象就来了:
我无法查看
$a、$b和$c的变量值,无论是在调试窗口中还是将鼠标放在这些变量上。我点击F8,左边3个断点不会到达。我不知道程序的步骤现在在哪里,但我知道响应不会返回到 Chrome,因为 Chrome 仍在加载。
更奇怪的是,如果我删除所有断点而不单击侦听器按钮而不单击调试按钮,Chrome 加载成功,但是一旦我单击侦听器按钮和调试按钮,刷新 Chrome,除非我停止侦听,否则 Chrome 将永远加载并停止调试,然后 Chrome 将加载成功。那是有线的;我已经取消选中'break at first line',根本没有断点。我猜 PhpStorm 卡在某个地方,但我不知道它在哪里。
谁能帮帮我,另一台电脑可以调试成功,但是这台电脑永远不能调试成功。
1) 显示整个 Xdebug 日志(共享文件)
Xdebug 日志在这里:https://www.dropbox.com/s/psfktprtl2jfftq/debug2.log?dl=0
这是昨天早些时候更大的日志:https://www.dropbox.com/s/64jnwhscatjaihq/debug2-ealier.log?dl=0
2) PHP & Xdebug 版本?
PHP 和 Xdebug 版本如下图。
xdebug 日志
【问题讨论】:
-
1) 显示整个 Xdebug 日志(共享文件) 2) PHP & Xdebug 版本?
-
我已经编辑了我的问题,有xdebug日志和php版本,非常感谢!
-
你的 PhpStorm 版本是什么?上次忘记问这个了。 Xdebug 2.7 需要 PhpStorm 2018.3.x 或更高版本。因此,要么将 PhpStorm 升级到最新的稳定版 2018.3.x,要么将 Xdebug 降级到 2.6.x。这应该可以解决问题。
-
你太好了,我将 Xdebug 降级到 2.6.1,现在可以了,我不敢相信,这个问题让我沮丧了好几天,stackover 是一个不错的选择,充满了专家,Ealier I用phpstrom 2018.1,然后我换成phpstorm 2017.2,还是不行,非常感谢!