如何使用VS代码启动和调试php


How to launch and debug php using VS Code?

我是VS代码和php世界的新手。我的经验更多的是使用像Visual Studio这样的重量级IDE。然而,我需要在我的开发机器上设置一个php环境,并且在使其正常工作方面遇到了一些困难。

我的环境是一台Win 10开发机器。我使用的是VS代码和php版本5.5。我已经正确安装了xdebug扩展,并验证它是否正确安装。我还在VS代码中安装了php调试扩展。

我一直无法通过谷歌找到任何有用的信息,我面临的挑战是从VS Code中启动php网站,然后能够对其进行调试

有几件事我试过了,但没有成功。

  1. 我为VS Code安装了iis-express扩展,它允许通过iis-expression运行任何文件夹。https://marketplace.visualstudio.com/items?itemName=warren-buckley.iis-express这是有效的,但网站显示不正确。IIS返回一条错误消息,表示该站点配置不正确。它显然缺少一个映射或类似的东西。

  2. 我关注了这个博客。http://blog.denouter.net/2015/05/run-php-from-visual-studio-code.html我能够使用内置的php网络服务器运行网站。

  3. 安装了webmatrix,让windows平台安装程序正确安装并连接iis-express以使用php。从webmatrix运行时,相同的文件夹工作正常。

  4. 已将php调试扩展安装到VS Code。https://github.com/felixfbecker/vscode-php-debug

这是我想我错过的东西。我认为我需要从VS代码中启动网站,以便调试工作。我不知道如何从VS代码中"启动"php网站。VS Code的php调试扩展仅支持启动。它不支持"附加"模式。我怀疑这就是为什么当我在VS Code之外运行网站时,调试器不起作用的原因。让我明确一点,当我点击F5时,调试器正在工作,它只是永远不会在任何断点上停止。

总结:如何从VS代码中启动和调试我的php网站?我正在寻找一个详细的分步指南。

感谢

我是vscode php调试的作者。你不需要";启动网站";来自VS代码内部。当您启动";收听XDebug";在调试部分的配置中,VS Code(或者更确切地说,我的调试适配器)将侦听XDebug的端口9000。您需要在PC上本地运行Apache、IIS或nginx等web服务器,并将其配置为提供PHP文件——这与VS代码无关。然后只需打开一个web浏览器并导航到localhost,XDebug就会连接到调试器,在断点处停止。

php.ini中的两个必要设置是:

  • xdebug.mode=调试
  • xdebug.start_with_request=是(不要忘记在设置之前添加字幕[XDebug]