PHP Debug in Visual Studio Code breaks on every exception

假装没事ソ 提交于 2020-01-13 09:43:07

问题


I am just starting to use the PHP Debug extension in Visual Studio Code (Ubuntu 14.04). It mostly works fine for me, but I have a problem that every time an exception is thrown, the debugger automatically breaks. We have lots of exceptions which are internally caught and handled in our code, so I don't want to have to step through each of these.

I've been trying to find something like the Exception Settings in Visual Studio 2015, but can't find any equivalent options within Visual Studio Code.

php.ini settings:

[debug]
xdebug.remote_autostart=on
xdebug.remote_enable=on
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=localhost
xdebug.remote_port=9000

Visual Studio Code launch.json:

{
   "version": "0.2.0",
   "configurations": [      
       {
           "name": "Launch currently open script",
           "type": "php",
           "request": "launch",
           "program": "${file}",
           "cwd": "${fileDirname}",
           "port": 9000,
           "args": ["some arguments"]
       }
   ]
}

Note that when I use Netbeans for debugging with the same xdebug settings and the same codebase, there is no break-on-exception behaviour, so I think this must be something in Visual Studio Code and/or the PHP Debug extension.

Can anyone suggest how to pass through exceptions without breaking?


回答1:


I've just found the answer myself (feeling a little stupid now!).

In Visual Studio Code, go to View->Debug, then uncheck the 'Everything' button in the Breakpoints section. That option will automatically break on PHP Notices, Warnings and Exceptions.




回答2:


I was looking for another answer for this question

I was having breakpoints in my Composer dependencies, which turned debugging really annoying.

For anyone having the same issue, you can set the property ignore in the launch.json file, with an array of glob patterns for the PHP Debug extension to ignore.

{
  // Use IntelliSense to learn about possible attributes.
  // Hover to view descriptions of existing attributes.
  // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Listen for XDebug",
      "type": "php",
      "request": "launch",
      "port": 9000,
      "ignore": [
        "**/vendor/**/*"
      ]
    },
    {
      "name": "Launch currently open script",
      "type": "php",
      "request": "launch",
      "program": "${file}",
      "cwd": "${fileDirname}",
      "port": 9000,
      "ignore": [
        "**/vendor/**/*"
      ]
    }
  ]
}


来源:https://stackoverflow.com/questions/44538157/php-debug-in-visual-studio-code-breaks-on-every-exception

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!