问题标签 [xdebug-3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
phpstorm - 如何为 JetBrains PhpStorm 2020.1 配置 Xdebug?
所以,我很高兴地用 PhpStorm 调试我的 PHP 代码 - 直到 Windows 严重损坏......我的备份机制结果并不像我想象的那么好(让我们中的许多人吸取教训 :-( )
这是我的相关部分php.ini
:
而且,这就是 PhpStorm 所说的:
但其中大部分内容实际上并不存在于https://xdebug.org/docs/all_settings - 好像其中一些设置不再相关/受支持。
那么,任何人都可以发布PHP Storm 2020.1的相关[Xdebug]
部分吗?php.ini
c - 将时间从 UTC 更改为 C 中的本地时间
我想在本地时间输出America/Los_Angeles
到日志文件。目前,我正在使用 UTC 时间。我希望这三个功能中存在解决方案。
打开日志。设置log_open_timestring
功能xdebug_nanotime_to_chars
。
将日志打开时间打印到日志文件:
php - VSCode + Lando:Xdebug 不会停止
我正在尝试使用 Lando (v. 3.0.24) 和 VSCode 设置 Xdebug,但没有成功。我已经阅读了官方指南以及互联网上的其他内容,以及与我的问题相似的不同主题,但可惜我无法让它工作。
我在文件夹中的lando文件docroot
是:
php.ini 文件是:
最后,launch.json 文件是:
顺便说一句,我不确定如何设置pathMappings
,所以我尝试了不同的组合,例如
- "/app/": "${workspaceRoot}/",
- "/app/": "${workspaceRoot}/docroot",
- "/app/": "${workspaceFolder}/",
- "/app/": "${workspaceFolder}/docroot",
无论如何,问题在于 Xdebug 不会在断点处停止。
如果我跟踪 xdebug.log,我会看到:
那么也许 Xdebug 仍然无法连接到正确的 IP?无论如何,知道如何解决\可以让它工作吗?谢谢
编辑:如果我将lando.yml 文件从doocroot 文件夹移动到上面的文件夹,我可以得到一些工作情况,Xdebug 实际上停止在VSCode 中。但是还有另外两个问题:
- 不能再使用
lando drush
了。解决此问题的方法是,lando composer require drush/drush
但不知道为什么“全球”的lando 热潮不起作用。 - 终端命令 - 例如 drush - 似乎不适用于 xdebug(至少对我来说是一个非常小的问题),因为它们返回
Xdebug:[Step Debug] 无法连接到调试客户端。尝试过:172.31.206.147:9003(通过 xdebug.client_host/xdebug.client_port 回退):-(
在更新的 php.ini 和lando.yml 文件下面,launch.json 与上面相同。
php - 控制台中的 Xdebug 3 错误消息:设置“xdebug.collect_params”已被删除
在 Ubuntu 上升级到 Xdebug 3 后,每次从命令行执行脚本后,我都会在控制台中看到以下错误消息:
Xdebug:[配置] 'xdebug.collect_params' 设置已被删除,请参阅https://xdebug.org/docs/upgrade_guide#changed-xdebug.collect_params的升级指南(请参阅:https ://xdebug.org/docs /errors#CFG-C-REMOVED )
我在 php.ini 或 xdebug.ini 文件中没有此设置
PHP版本:
PHP 8.0.0 (cli) (built: Nov 27 2020 12:26:05) (NTS) 版权所有 (c) The PHP Group Zend Engine v4.0.0-dev, 版权所有 (c) Zend Technologies with Zend OPcache v8.0.0,版权所有 (c),Zend Technologies 和 Xdebug v3.0.1,版权 (c) 2002-2020,Derick Rethans
问题也可以在 php 7.4 和其他开发人员上重现
phpunit - xdebug.start_start_with_request=yes WITHOUT error if the debug client is not listening
I used to have the following configuration with Xdebug 2:
xdebug.default_enable=1
Xdebug did not slow down execution when no debug client was listening but when I needed to debug something then I only had to enable the listening in PhpStorm and refresh the page. No browser extension was needed for this. The same applied for debugging CLI applications, it just worked.
I tried to achieve the same with Xdebug 3 with the following configuration:
It works the same BUT every time when I disable debug listening in PhpStorm and run a CLI command I get the following message with error severity:
This is something that I could live with but it also makes PHPUnit tests fails beStrictAboutOutputDuringTests="true"
is enabled.
The upgrade guide suggest to use xdebug.module=develop
if I used xdebug.default_enable=1
but that is not a valid replacement.
Completely silencing ALL Xdebug logs or even disabling error reporting in PHP suggested by this comment looks a dirty hack to me with possible drawbacks instead of a valid solution.
How can I keep the expected behavior without this message?
php - Xdebug 3 配置文件
我需要有关调试 Xdebug 3 配置的工作步骤的帮助。我在带有 nginx 的 Ubuntu 服务器 20.04 上运行 Xdebug 3.0.1,安装在 Oracle VirtualBox 上。我的 IDE 是 PhpStorm。
一切正常(SSH 隧道、SFTP、端口转发),连接已建立,但未开始单步调试。
我当前的 Xdebug 3 配置:
任何人都在工作步骤调试配置中配置了 Xdebug 3,可以帮助我吗?
从浏览器捕获的 phpinfo() Xdebug 部分 - 它非常长
xdebug 版本 3.0.1
来自浏览器的 xdebug_info()
php - 无法让 Xdebug 3 与 Docker 一起使用
因此,在浏览了几天但没有成功后,试图弄清楚为什么升级到 Xdebug 3 似乎只能部分适用于我的 Dockerized Laravel 项目,我在这里。我密切关注了升级指南和官方文档以及其他最近的 帖子 ,但我仍然完全困惑为什么调试器不会在断点处停止,除非我手动传递配置选项来运行 Artisan 命令(更多关于这个下面一点)。Xdebug 2 一切正常。
以下是(我认为是)配置文件/输出的相关部分。是的,我意识到多次设置相同的配置,这是尝试许多不同位置来设置这些选项的结果。
码头工人-compose.yml
php.docker文件
我的主机(Windows)php.ini (如果相关)
启动.json
php -i输出的 Xdebug 部分(删除了不推荐使用的选项)
附加模块下的加号
正如我所提到的,直接在 CLI 上将选项作为标志运行确实尊重我设置的断点——也就是说,猛击 php 容器,然后运行php -dxdebug.mode=debug -dxdebug.start_with_request=yes -dxdebug.client_port=9001 -dxdebug.client_host=127.0.0.1 artisan some:command
调试器就可以了。
为长度和文件转储道歉,但我现在真的迷路了,所以任何指针都将不胜感激!
编辑:看起来我遇到的任何问题都已在Xdebug 3.0.2中修复。感谢LazyOne的帮助!