Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 有没有办法解决为什么Xdebug没有在VSCode中的断点处停止的问题?_Php_Visual Studio Code_Xdebug_Laragon_Xdebug 3 - Fatal编程技术网

Php 有没有办法解决为什么Xdebug没有在VSCode中的断点处停止的问题?

Php 有没有办法解决为什么Xdebug没有在VSCode中的断点处停止的问题?,php,visual-studio-code,xdebug,laragon,xdebug-3,Php,Visual Studio Code,Xdebug,Laragon,Xdebug 3,几天来,我一直在研究Xdebug为什么不在断点处停止。我已经阅读并尝试了几十种有关StackOverflow的解决方案。他们都没有工作过是否有方法对配置不工作的原因进行故障排除?。任何帮助都将不胜感激,因为我已经在这个问题上工作了几天 我的设置: 我使用的是Windows 10,它加载在驱动器C上。在我的F:驱动器上,我有一个Laragon(本地服务器),它包含我的(PHP v7.2.19)文件。我的VSCode也在F:驱动器上。VSCode使用Felix Becker的PHP调试扩展 VSCo

几天来,我一直在研究Xdebug为什么不在断点处停止。我已经阅读并尝试了几十种有关StackOverflow的解决方案。他们都没有工作过是否有方法对配置不工作的原因进行故障排除?。任何帮助都将不胜感激,因为我已经在这个问题上工作了几天

我的设置:

我使用的是Windows 10,它加载在驱动器C上。在我的
F:
驱动器上,我有一个Laragon(本地服务器),它包含我的(PHP v7.2.19)文件。我的VSCode也在F:驱动器上。VSCode使用Felix Becker的PHP调试扩展

VSCode Launch.json:

"version": "0.2.0",
"configurations": [
    {
        "name": "Listen for XDebug",
        "type": "php",
        "request": "launch",            
        "port": 9000, 
    },
    {
        "name": "Launch currently open script",
        "type": "php",
        "request": "launch",
        "program": "${file}",
        "cwd": "${fileDirname}",
        "port": 9000
    }
]
我已经按照Xdebug向导的指示下载并安装了所有内容。下面是我在Laragon安装中的php.ini文件

php.ini

[xdebug]
zend_extension = "F:\Laragon\bin\php\php-7.2.19-Win32-VC15-x64\ext\php_xdebug-3.0.0-7.2-vc15-x86_64.dll"
xdebug.remote_enable = 1
xdebug.remote_autostart = 1
扩展似乎已加载:

DEBUG     Checking PHPLS_ALLOW_XDEBUG
DEBUG     The xdebug extension is loaded (3.0.0)
DEBUG     Process restarting (PHPLS_ALLOW_XDEBUG=internal|3.0.0|0|*|*)
DEBUG     Running f:\laragon\bin\php\php-7.2.19-Win32-VC15-x64\php.exe -n -c C:\Users\Bill\AppData\Local\Temp\CA11.tmp c:\Users\Bill\.vscode\extensions\felixfbecker.php-intellisense-2.3.14\vendor\felixfbecker\language-server\bin\php-language-server.php --tcp=127.0.0.1:13121 --memory-limit=4095M

DEBUG     Checking PHPLS_ALLOW_XDEBUG
WARNING   Restarted (130 ms). The xdebug extension is loaded (3.0.0)
在php.ini中,有什么方法可以解决我的设置问题吗?

[xdebug]
zend_extension = "F:\Laragon\bin\php\php-7.2.19-Win32-VC15-x64\ext\php_xdebug-3.0.0-7.2-vc15-x86_64.dll"
xdebug.mode=debug
xdebug.idekey=VSCODE
xdebug.start_with_request=yes
xdebug.client_host=127.0.0.1
xdebug.client_port=9001
在php.ini中

[xdebug]
zend_extension = "F:\Laragon\bin\php\php-7.2.19-Win32-VC15-x64\ext\php_xdebug-3.0.0-7.2-vc15-x86_64.dll"
xdebug.mode=debug
xdebug.idekey=VSCODE
xdebug.start_with_request=yes
xdebug.client_host=127.0.0.1
xdebug.client_port=9001

感谢懒人在评论中引导我找到答案。问题是,我在使用XDebug 2参数,而我本应该使用XDebug 3。还感谢WebEXP0528为您发布建议答案。然而,对该网站的引用确实帮助我理解了为什么要更改php.ini文件。参考xdebug.org/docs/upgrade_指南的网页提供了许多帮助我解决问题的信息

旧的:

基于xdebug.org/docs/upgrade\u指南的新php.ini:

[xdebug]
zend_extension = "F:\Laragon\bin\php\php-7.2.19-Win32-VC15-x64\ext\php_xdebug-3.0.0-7.2-vc15-x86_64.dll"
xdebug.mode = debug
xdebug.start_with_request = yes
xdebug.discover_client_host = 1

感谢懒人在评论中引导我找到答案。问题是,我在使用XDebug 2参数,而我本应该使用XDebug 3。还感谢WebEXP0528为您发布建议答案。然而,对该网站的引用确实帮助我理解了为什么要更改php.ini文件。参考xdebug.org/docs/upgrade_指南的网页提供了许多帮助我解决问题的信息

旧的:

基于xdebug.org/docs/upgrade\u指南的新php.ini:

[xdebug]
zend_extension = "F:\Laragon\bin\php\php-7.2.19-Win32-VC15-x64\ext\php_xdebug-3.0.0-7.2-vc15-x86_64.dll"
xdebug.mode = debug
xdebug.start_with_request = yes
xdebug.discover_client_host = 1

我使用的是Laravel2.2.2,有些版本不适合x调试,我在PHPINI文件中使用了以下代码 zend_extension=php_xdebug-2.9.8-7.1-vc14.dll和
[XDebug]XDebug.remote\u enable=1 XDebug.remote\u autostart=1

Me我使用的是laravel 2.2.2某些版本不适用于x调试,我在我的php ini文件中使用以下行代码 zend_extension=php_xdebug-2.9.8-7.1-vc14.dll和
[XDebug]XDebug.remote\u enable=1 XDebug.remote\u autostart=1

1)XDebug 3(您拥有的)使用的配置参数与XDebug v2(您尝试在php.ini中使用的)不同。请检查Xdebug 3的升级文档,并使用正确的参数进行配置:2)您始终可以通过捕获
phpinfo()
输出来检查当前Xdebug配置,方法与您尝试调试的方法相同(网页或CLI)。只需查看Xdebug扩展的专用部分。3) 配置好后,一切看起来都很好,但仍然不起作用:启用并检查Xdebug日志——它将告诉您是否尝试连接到VSCode,响应是什么等。1)Xdebug 3(您拥有的)使用的配置参数与Xdebug v2(您试图在php.ini中使用的)不同。请检查Xdebug 3的升级文档,并使用正确的参数进行配置:2)您始终可以通过捕获
phpinfo()
输出来检查当前Xdebug配置,方法与您尝试调试的方法相同(网页或CLI)。只需查看Xdebug扩展的专用部分。3) 在您配置它之后,它看起来很好,但仍然不起作用:启用并检查Xdebug日志——它将告诉您是否尝试连接到VSCode,响应是什么,等等。谢谢!!!!我已经为此奋斗了很久了…谢谢!!!!我已经为此奋斗了很久了。。。