在使用 Visual Studio Code 调试 PHP 代码时,我遇到了一个小问题。XDebug 能够正常工作,我可以在断点处停下来并通过将鼠标悬停在变量上或将它们添加到监视器中来评估变量。
然而,当我尝试查看具有超过32个项的数组时,只能看到前32个项。例如,具有172个项的数组只会显示32个项。
我尝试以各种方式评估此数组,在控制台内运行转储命令或使用 json_encode,但都没有成功。
有什么想法吗?
在使用 Visual Studio Code 调试 PHP 代码时,我遇到了一个小问题。XDebug 能够正常工作,我可以在断点处停下来并通过将鼠标悬停在变量上或将它们添加到监视器中来评估变量。
然而,当我尝试查看具有超过32个项的数组时,只能看到前32个项。例如,具有172个项的数组只会显示32个项。
我尝试以各种方式评估此数组,在控制台内运行转储命令或使用 json_encode,但都没有成功。
有什么想法吗?
感谢Phiter的评论,我成功找到了解决方法。
基本上,XDebug可以通过放置在php.ini文件中的各种选项进行配置。其中包括指定在GUI上显示对象深度的选项。
然而,在通过Visual Code的PHP Debug(felixbecker.php-debug)扩展进行调试时,这些设置必须在其他地方进行配置。完整的说明列在此页面上:https://github.com/felixfbecker/vscode-php-debug#supported-launchjson-settings 大意是打开左侧栏上的调试面板->单击齿轮图标以打开启动.json文件,该文件包含调试器的设置,并添加以下代码片段:
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"xdebugSettings": {
"max_children": 999,
}
},
就是这样。
max_children:999
”外,我还必须添加“ max_depth:10
”。 - Jules Collemax_data
设置为-1
来禁用任何限制。 - Sir CodesALot