【问题标题】:How to stop xdebug from stopping on first line with PhpStorm?如何阻止 xdebug 在 PhpStorm 的第一行停止?
【发布时间】:2025-11-28 08:50:02
【问题描述】:

我遇到了这个奇怪的问题。在我更新我的 PHP 版本之前,我所有的设置都可以正常工作。我使用 macports 并安装了 php5 和 php5-xdebug 端口。

xdebug 正在工作,但它在我的脚本的第一行停止,即使我在 PhpStorm 中禁用了该选项。那里没有断点,代码其他部分的断点工作正常。

如果有帮助,这里是 phpinfo 的 xdebug 部分(分为两部分); https://dzwonsemrish7.cloudfront.net/items/3K3R2N1f1A190K372n0S/Screen%20shot%202011-08-18%20at%203.06.29%20PM.png?v=54c8964dhttps://dzwonsemrish7.cloudfront.net/items/0i133s0U430k3u3w3B1E/Screen%20shot%202011-08-17%20at%205.14.25%20PM.png?v=1278da84 以及它在 phpStorm 中被禁用的证明:https://dzwonsemrish7.cloudfront.net/items/3W2S060I1b0W1q0z0c45/Screen%20shot%202011-08-18%20at%203.07.00%20PM.png?v=85471026

是否有我需要更改的 xdebug 设置?当我进行升级时,我丢失了具有其他一些 xdebug 配置的 php.ini。

【问题讨论】:

    标签: php debugging xdebug phpstorm


    【解决方案1】:

    以上对我不起作用,因为据我所知,如果您使用的是 Xdebug,您获得的唯一调试书签是启动/停止和调试此页面。我没有看到任何特定于在第一行停止的小书签,启动/停止小书签和阻止 PHPStorm 在 PHPStorm 中侦听都没有为我解决问题。

    为了让它停止,我这样做了(在 OS X 上):

    1. 转到首选项 > 语言和框架 > PHP > 调试
    2. 取消选中两个“在第一行强制中断...”选项
    3. 应用并关闭
    4. 在“运行”菜单中,取消选中“在 PHP 脚本的第一行中断”

    例如,即使您有路径映射,public/index.php 路径也可能不会被视为项目的一部分。

    【讨论】:

    • 哦,我可能会补充一点,您只能在运行当前 PHPStorm 调试会话时切换此选项。
    • “运行”菜单下的选项是为我做的,在第一行有两个似乎自动设置为一直中断的地方有点烦人。
    • 那个屏幕截图,完美。也适用于修复零配置模式,它似乎没有调试启动器配置。
    • 请投票简化/澄清 PhpStorm 问题跟踪器中的菜单 - youtrack.jetbrains.com/issue/WI-30649
    • Eclipse 在 Perefences > PHP > Debug 中也有相同的选项。
    【解决方案2】:

    在首选项的 PHP->Debug 部分中选中“Force break at the first line...”。

    除此之外,还要检查此设置:

    【讨论】:

    • 那个屏幕截图,完美。也适用于修复零配置模式,它似乎没有调试启动器配置。
    • 请在 PhpStorm 问题跟踪器中投票以改进这一点 - youtrack.jetbrains.com/issue/WI-30649
    • 这是正确的答案,我知道为什么同一操作有两个单独的选项,运行菜单中的那个元素导致了我的问题。谢谢
    • 非常感谢,我们也想不通。谁会想到运行 - >“在 PHP 脚本的第一行中断”在“首选项/设置”窗格中不可用。几乎所有其他东西都是。
    【解决方案3】:

    我对 PHPStorm 的问题是我在做 Drupal,而 index.php 在项目之外(因为项目是一个模块)。我需要在首选项的 PHP->Debug 部分取消选中“在第一行强制中断...”设置。

    【讨论】:

    • 我的空间用完了,因为在我的根分区 (/) 中,因为 /var/www 中有大量项目。由于我没有单独的 /var 分区,我不得不将它们全部移动到 /home/,然后我将 /home/user/www 符号链接到 /var/www/。看起来 PHPStorm 现在将我的项目检测为像您的 index.php 一样的“外部”项目,并且不知道如何处理符号链接。我取消选中了选项,现在不会在每个文件中都停止,谢谢!
    • 只是想补充一点(希望谷歌能抓住它)PHPStorm 中的这个函数也会导致我在本地机器上运行的任何 php 脚本挂起,所以像 homestead up 或 @ 这样的命令987654323@ 没有运行,它只会停止(因为 xdebug 在第一行中断)。取消选中这两个选项有助于解决此问题。
    【解决方案4】:

    你使用debug bookmarklets吗? 'Break at the first line' 选项也可以通过 'xdebug Break On' 和 'xdebug Break Off' 小书签来控制。

    【讨论】: