LoginSignup
18
20

More than 3 years have passed since last update.

Visual studio CodeのPHP DebugをMacで使えるようにするまで

Last updated at Posted at 2019-10-19

前提条件

OS:Mac OS High Sierra 10.13.6
Visual Studio Code 1.41.1
MAMP 5.5

参考サイト

Visual Studio CodeでPHPデバッグをおこなう方法(その2)

PHPDebugインストール

手順通り、VSCode拡張機能で、PHP Debugをインストール
スクリーンショット 2019-10-19 2.10.13.jpg

MAMPのphpのバージョンを確認

スクリーンショット 2019-10-19 2.20.27.jpg

スクリーンショット 2019-10-19 2.22.09.jpg
MAMPトップページが立ち上がるので、TOOLSPHPINFOをクリック
Command + A
で全選択して、
スクリーンショット 2019-10-19 2.27.26.jpg

Command + C
でコピーします。

XDebugサイトのページを参照する

「XDebug」公式サイトに行き、
https://xdebug.org/wizard
スクリーンショット 2019-10-19 2.28.45.jpg

その下の
スクリーンショット 2019-10-19 2.32.42.jpg
をクリックすると自分のPHP環境がSUMMARYとして出てくるので、
その下のinstructionsの通りに実施していく。

スクリーンショット 2019-10-19 2.31.34.jpg

自分のPHPのバージョンを確認する。

必要なファイルのダウンロードとインストール

リンクにある、xdebug-2.7.2.tgz をダウンロードする。
PHP拡張機能に必要なphpとautoconfをbrewでインストールする。
brewがなければインストールする。(参考:Homebrew のインストールと基本的な使い方)

brew install php
brew install autoconf
cd Users/ユーザ名/Downloads/
tar -xvzf xdebug-2.7.2.tgz
cd xdebug-2.7.2
phpize

phpizeを実行した結果バージョンが違った場合

phpizeをやったところで、下のような出力結果がでた。

$ phpize
Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303`

instructionを見ると正しくは、

Configuring for:
...
Zend Module Api No:      20180731
Zend Extension Api No:   320180731

こう出るはずなのだが、私のphpizeはバージョンが違った。

FAQのリンクのやり方通りに実施。
参照先:Q: How do I find which phpize to use?

phpize --help

を実施すると、以下のように自分の環境のphpizeのパスがでる。

Usage: /usr/local/bin/phpize [--clean|--help|--version|-v]
php-config --version

を打ち込んで、現在実行しているPHPのバージョンを表示する。

表示されたphpのバージョンがMAMPのphpバージョンと違う場合、Macのphpのバージョンが表示されている可能性がある。

今回、MAMPのphpinfo()で見たMAMPのphpバージョンと、表示されたphpizeとphpが一致しなかったので、フルパスでphpizeを指定する。

今回はMAMPを使ってデバッグ環境を整えるので、MAMPのphpのバージョンに合わせて設定する。

ターミナルに(MAMPの)正しいphpizeのフルパスを打ち込む。

/Applications/MAMP/bin/php/php7.3.8/bin/phpize

instruction通りのphpizeのバージョンが、ターミナルに出た。

Configuring for:
PHP Api Version:         20180731
Zend Module Api No:      20180731
Zend Extension Api No:   320180731`

XDebugのinstruction通りに実施

続いて(正しいコマンドはXDebugのinstructionに従う)

./configure --with-php-config=/Applications/MAMP/bin/php/php7.3.8/bin/php-config

make

cp modules/xdebug.so /Applications/MAMP/bin/php/php7.3.8/lib/php/extensions/no-debug-non-zts-20180731

/Applications/MAMP/bin/php/php7.3.8/conf/php.ini を開いて、

先頭に以下を追記。

zend_extension = /Applications/MAMP/bin/php/php7.3.8/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so

MAMP再起動。
これでデバッグ環境ができたはずです。

デバッグの流れ

デバッグの流れは、こちらを参考に。

1.Visual Studio Codeのデバッグボタンをクリック
(デバッグボタンは虫のマークアイコン)
2.画面左上の歯車マーク[Configure or fix ‘launch.json’]をクリックします
3.ドロップダウンで[Select Enviroment]で[PHP]を選択すると、PHPデバッグがおこなえるようになる

18
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
20