MacにインストールしたPhpStorm + Xdebugを使いPHPをデバックするためのメモ。
Xdebugをインストールしzend extensionとして設定していることを前提とする1。
1. php.iniの設定
php.iniを下記のように設定する。
[XDebug]
zend_extension="%xdebug.soのパス%"
xdebug.remote_enable=1
xdebug.remote_port=9000
xdebug.profiler_enable=1
xdebug.profiler_output_dir="%プロファイル結果の保存パス%"
- %xdebug.soのパス%は環境により異なる。
- %プロファイル結果の保存パス%は任意の場所を指定できる。
/var/tmp/xdebugディレクトリを作成して指定した。 - xdebug.remote_port=9000
指定値はPhpStorm > Settings > PHP > DebugのXdebugの項目で確認できる(デフォルトは9000)。
2. デバック処理用ブックマークレット作成
jetbrainsのサイトでデバック開始・停止用のブックマークレットを作成する。
ブックマークレット作成ページ
» Zend Debugger & Xdebug bookmarklets generator for PhpStorm
上記ページはSettings > PHP > Debugのダイアログの下図のリンクからも表示できる。
デバック実行
- ツールバーの電話アイコンをクリックしてリスン状態にする
- ブックマークレットのデバック開始をクリックする。
- IDE(PhpStorm)でブレークポイントを設定してブラウザからデバックするするプログラムにアクセスする
ツールバー電話アイコン
ブックマークレットのデバック開始
先ほど作成したブックマークレット開始ボタンをクリックする。
プログラムにアクセスする
PhpStormでブレークポイントを指定してブラズザでプログラムにアクセスすると下記のようにステップ実行できる。
-
XAMPP for Mac 1.7.1はデフォルトでXDebug 2.0.4がインストールされていた。
phpinfo関数でインストールを確認する。
php.iniを変更する。
zend_extension=”%pdebug.soのパス%”
自分の環境の設定 zend_extension=”/Applications/XAMPP/xamppfiles/lib/php/php-5.3.1/extensions/no-debug-non-zts-20090626/xdebug.so” ↩