如何在Visual Studio代码(VSCode)上运行或调试php

ome*_*802 54 php debugging visual-studio-code

我找不到在Visual Studio代码上运行或调试php的方法,有谁知道怎么做?

fle*_*ive 47

使用vscode-php-debug扩展,使用VSCode调试PHP

VSCode现在可以通过市场扩展vscode-php-debug支持调试PHP项目.

此扩展在后台使用XDebug,允许您使用断点,监视,堆栈跟踪等:

屏幕截图:使用vscode-php-debug扩展在VSCode中进行PHP调试

在VSCode中安装很简单:用F1召唤命令行然后键入 ext install php-debug

  • 我是这个扩展的作者,如果你有任何问题,请打我 (8认同)
  • 安装可能很简单.配置并实际上让它工作是除此之外的任何事情. (5认同)
  • 我可以使用本地VSC安装调试服务器上运行的PHP代码吗? (2认同)

Y U*_*ORK 18

至于我今天读到的,你现在无法调试除node.js,JavaScript和TypeScript之外的任何东西,但是他们说他们想要添加你可以调试的新语言.编辑仍在开发中.不过,我不认为将来会有一个php调试器因为php是服务器端,所以你不能单独在你的客户端调试它.

如果你想调试php,我可以推荐xDebug.


更新:

现在,可以使用VS代码进行调试.您需要为VScode 安装XDebugphp-debug扩展.

  • 这个答案很奇怪,但我会尽力澄清.xDebug是调试PHP的选项之一,它作为PHP扩展在您的服务器上运行.这是故事的一个方面.另一边是xDebug客户端.例如,Sublime Text就有一些编辑器的客户端.这些允许您在PHP处理请求时将在您的代码上设置断点.所以我们需要的是VSCode的xDebug客户端.希望这更清楚. (14认同)
  • 一旦有人这样做了,他必须做的是按**F5**实际上启动服务器并打开页面进行调试。这是最难理解的事情,但大多数答案甚至没有告诉我们任何关于这一点的信息。我已经安装了 PHP(通过 IIS Web 平台安装程序),我已经修改了我的 PHP.ini 文件,我已经复制了 XDebug DLL,但在那时,它仍然无法正常工作。 (2认同)

Joh*_*ter 15

现在有一个方便的指南,用于在Visual Studio Code中配置PHP调试,网址http://blogs.msdn.com/b/nicktrog/archive/2016/02/11/configuring-visual-studio-code-for-php-development的.aspx

从链接,步骤是:

  1. 下载并安装Visual Studio Code
  2. 在用户设置中配置PHP linting
  3. 从Visual Studio Marketplace下载并安装PHP Debug扩展
  4. 为XDebug配置PHP Debug扩展

请注意链接文章中有特定的详细信息,包括VS Code用户配置的PHP值,等等.

  • 博文没有解释如何配置 xdebug 链接在 vscode 中打开,但在这里进行了解释:/sf/ask/3705501691/ -并在 vs 代码中打开文件 (2认同)

Kod*_*son 11

如果您不想安装 xDebug 或其他扩展,只想在不调试的情况下运行 PHP 文件,则可以使用构建任务来完成此操作。

使用构建任务

首先打开命令调色板(Ctrl+ Shift+P在Windows,?+ Shift+P在Mac),然后选择“任务:打开用户任务”。现在将我下面的配置复制到您的 tasks.json 文件中。这将创建可以在任何时间和任何工作区中使用的用户级任务。

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Start Server",
            "type": "shell",
            "command": "php -S localhost:8080 -t ${fileDirname}",
            "isBackground": true,
            "group": "build",
            "problemMatcher": []
        },
        {
            "label": "Run In Browser",
            "type": "shell",
            "command": "open http://localhost:8080/${fileBasename}",
            "windows": {
                "command": "explorer 'http://localhost:8080/${fileBasename}'"
            },
            "group": "build",
            "problemMatcher": []
        }
        {
            "label": "Run In Terminal",
            "type": "shell",
            "command": "php ${file}",
            "group": "none",
            "problemMatcher": []
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

如果要在终端中运行 php 文件,请打开命令面板并选择“任务:运行任务”,然后选择“在终端中运行”。

如果您想在响应 Web 浏览器的 Web 服务器上运行您的代码,请打开命令面板并选择“任务:运行任务”,然后选择“启动服务器”以运行 PHP 的内置服务器,然后选择“在浏览器中运行” " 从浏览器运行当前打开的文件。

请注意,如果您已经有一个网络服务器在运行,您可以删除该Start Server任务并更新该localhost:8080部分以指向您正在使用的任何 URL。

使用 PHP 调试

注意:此部分在我的原始答案中。我最初认为它可以在没有 PHP Debug 的情况下工作,但看起来 PHP Debug 实际上php在启动配置中公开了类型。没有理由在上述构建任务方法上使用它。我把它留在这里以防万一它有用。

将以下配置复制到您的用户设置中:

{
    "launch": {
        "version": "0.2.0",
        "configurations": [
            {
            "type": "php",
            "request": "launch",
            "name": "Run using PHP executable",
            "program": "${file}",
            "runtimeExecutable": "/usr/bin/php"
            },
        ]
    },
    // all your other user settings...
}
Run Code Online (Sandbox Code Playgroud)

这将创建一个全局启动配置,您可以在任何 PHP 文件上使用它。请注意该runtimeExecutable选项。您需要使用机器上 PHP 可执行文件的路径来更新它。复制上面的配置后,只要打开了 PHP 文件,就可以按 F5 键运行 PHP 代码,并在 vscode 终端中显示输出。


Jun*_*Han 9

有一种更简单的方式来运行 PHP,无需配置:

  1. 安装代码运行器扩展
  2. 在文本编辑器中打开 PHP 代码文件
    • 使用快捷方式 Ctrl+Alt+N
    • 或按F1然后选择/键入Run Code,
    • 或右键单击文本编辑器,然后Run Code在编辑器上下文菜单中单击
    • 或单击Run Code编辑器标题菜单中的按钮
    • 或单击Run Code文件资源管理器上下文菜单中的按钮

此外,您可以选择部分 PHP 代码并运行代码片段。很方便!