问题
I have a small issue when debugging PHP with Visual Studio Code. The XDebug works fine, I am able to stop at breakpoints and evaluate variables by hovering on them or adding them to watch. However when I attempt to view an array which has more than 32 items, I can only see those first 32. For example, an array of 172 items will only display 32 items. I tried to evaluate this array in a manner of ways, running dump commands inside the console, or json_encode, to no avail.
Any ideas?
回答1:
Thanks to Phiter's comment, I managed to find a fix.
Essentially, XDebug can be configured with various options placed inside the file php.ini. Among these options are those which specify the depth of an object to display on the GUI.
However, when debugging through Visual Code's PHP Debug (felixbecker.php-debug) extension, these settings must be configured elsewhere. The full instructions are listed on this page: https://github.com/felixfbecker/vscode-php-debug#supported-launchjson-settings The gist of it is to open the Debug panel on the left bar -> click on the cogwheel icon to open the launch.json file which houses the debugger's settings, and -> add the following code snippet:
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000,
"xdebugSettings": {
"max_children": 999,
}
},
That's it.
来源:https://stackoverflow.com/questions/49752153/visual-studio-code-debugging-array-evaluation