红杉M3芯片支持VSCode中的php调试吗?

问题描述 投票:0回答:1

我最近从 Macbook Intel 迁移到运行 Seqouia 15.0.1 的 Macbook M3 芯片。我下载并安装了 Apple Silicon Visual Studio Code(不知何故我最终得到了“通用”版本 1.9.4.0)并启用了 PHP 调试扩展(有几个,我最终得到了 xdebug.org 扩展)。 launch.json 文件(如下所示)是通过链接自动生成的。我可以在显示的 php (8.2.2) 代码中设置断点。当我“开始调试”(监听 Xdebug)然后执行代码时,它不会在断点处停止。我注意到 Apple Silicon 工具的 MAMP7 目前不支持 Apache,因此我使用 Nginx 运行。在搜索了许多网站和问题后,我找不到解决此问题的解决方案。据我了解,php.ini 文件适用于 Apache 服务器,因此对其进行更改没有效果。我错过了什么?

"version": "0.2.0",
    "configurations": [
        {
            "name": "Listen for Xdebug",
            "type": "php",
            "request": "launch",
            "port": 9003
        },
        {
            "name": "Launch currently open script",
            "type": "php",
            "request": "launch",
            "program": "${file}",
            "cwd": "${fileDirname}",
            "port": 0,
            "runtimeArgs": [
                "-dxdebug.start_with_request=yes"
            ],
            "env": {
                "XDEBUG_MODE": "debug,develop",
                "XDEBUG_CONFIG": "client_port=${port}"
            }
        },
        {
            "name": "Launch Built-in web server",
            "type": "php",
            "request": "launch",
            "runtimeArgs": [
                "-dxdebug.mode=debug",
                "-dxdebug.start_with_request=yes",
                "-S",
                "localhost:0"
            ],
            "program": "",
            "cwd": "${workspaceRoot}",
            "port": 9003,
            "serverReadyAction": {
                "pattern": "Development Server \\(http://localhost:([0-9]+)\\) started",
                "uriFormat": "http://localhost:%s",
                "action": "openExternally"
            }
        }
    ]
}
vscode-debugger
1个回答
0
投票

使用以下命令找到并安装了 Apple Silicon 的有效 xdebug 扩展。

arch -arm64 sudo pecl install xdebug

这将 xdebug 安装到了我本地计算机的 php(不是 MAMP 的),因此需要更多操作才能使其在 MAMP 中工作。我对仅与 Apache 有关的 php.ini 文件的看法是错误的;我编辑了我正在使用的 php 版本的 MAMP php.ini 文件,并从 zend-extension 规则中删除了注释字符。然后,我必须将 xdebug.so 位置从默认位置更改为 xdebug 安装实用程序回显的位置:

/opt/homebrew/Cellar/php/8.3.12_1/pecl/20230831/xdebug.so

此后,VSCode 调试器在断点处正确停止。似乎没有关于如何为 Apple Silicon 执行此操作的单一信息来源,因此我希望这可以帮助其他人。

© www.soinside.com 2019 - 2024. All rights reserved.