スキップしてメイン コンテンツに移動

Xdebug3をIntelliJで使う

以前メモっておいた手順でXdebugが動かないな、と思ったら
Xdebug2からXdebug3になり設定ファイルのプロパティが変わっていたという話。

 まずはXdebugをインストール

インストールガイドに従ってダウンロードする。
自分はDocker環境だったのでDockerfileに以下を追記した。

>RUN pecl install xdebug \
  && docker-php-ext-enable xdebug
COPY ./php.ini /usr/local/etc/php/php.ini

iniファイルの設定

Xdebug2からの移行については公式に説明があった。
以下が自分が設定したXdebug3での値。
[xdebug]
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_host=host.docker.internal
xdebug.client_port=9001
xdebug.log=/var/log/xdebug.log
xdebug.idekey=PHPSTORM
xdebug.client_host=host.docker.internalはDockerでの設定値。デフォルトはlocalhost。
xdebug.client_portで設定したポート番号を intellijの設定画面>Language&Frameworks>PHP>DebugのXdebugの項目に設定する。
xdebug.idekeyに設定した「PHPSTORM」をRun>Edit Configurationsの画面で追加したPHP Remote Debugの中の「IDE key」に設定する。
あとはDocker再起動やphp-fpm再起動を行う。
Dockerだと PHP_IDE_CONFIG という環境変数をエクスポートしないと動かなかった。
export PHP_IDE_CONFIG="serverName=test"

ここのserverNameにはIntellijの設定画面>Language&Frameworks>PHP>Serversで設定されているサーバーのどれを使うかを指定する。

コメント