如何在 DDEV 中将 xdebug 3.0 与 PHP 7.3 或 7.4 一起使用?

How can I use xdebug 3.0 with PHP 7.3 or 7.4 in DDEV?

DDEV-Local v1.16.2 附带 xdebug 3.0 作为 PHP8.0 的 xdebug 版本(截至 2020 年 12 月,DDEV-Local v1.16),但我想试用 xdebug 3.0 与 PHP7.3 或 7.4。我该怎么做?

编辑 2020-12-13:DDEV-Local v1.16.3 附带 Xdebug 3.0.1 作为 PHP7.2/3/4 和 PHP8.0[= 的 Xdebug 版本11=]

编辑 2020-12-13:DDEV-Local v1.16.3 附带 Xdebug 3.0.1 作为 PHP7.2/3/4 和 PHP8.0 的 Xdebug 版本,所以你什么都不用做!

DDEV-Local 依赖于 PHP 的 deb.sury.org Debian 软件包,因此在进行更改时将遵循这些软件包。当前 deb.sury.org 将 PHP8.0 与 xdebug 3.0 打包在一起,但在更改之前,使用早期 PHP 版本获得 xdebug 3.0 并不难。

您可以为 PHP7.3 或 7.4 编译和安装 xdebug 3.0。将此文件作为 .ddev/web-build/Dockerfile 放在项目的 .ddev 目录中:

ARG BASE_IMAGE
FROM $BASE_IMAGE
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y -o Dpkg::Options::="--force-confold" --no-install-recommends --no-install-suggests php-dev php-pear build-essential
RUN pecl install xdebug
RUN cp /etc/php/8.0/mods-available/xdebug.ini /etc/php/7.4/mods-available/xdebug.ini
RUN cp /etc/php/8.0/mods-available/xdebug.ini /etc/php/7.3/mods-available/xdebug.ini