XDebugを利用してNetBeansでPHPをデバッグするための環境構築

PHPのデバッグを効率化するために、NetBeansにXDebugを利用したPHPのデバッグ環境を整えます。 これにより、PHPの処理を任意の位置に設置したブレークポイントで中断し変数値を確認したり、ステップ実行で処理を追いかけることが可能となります。

PHP開発環境の準備

XAMPPとNetBeansをインストールしてそれらが利用出来る環境を整えます。未だの場合は、コチラを参照して下さい。

XDebugダウンロード

Windows用のXDebugのバイナリファイルをXDEBUG EXTENSION FOR PHPのダウンロードページからダウンロードします。

XDebugのバージョンは最新のバイナリファイルをダウンロードするのが良いでしょう。ただ同一XDebugのバージョンでも、OSのプラットフォーム(32bit or 64bit)、PHPのバージョン、スレッドセーフ(IISやApache worker MPMでPHPを実行する場合のZend Thread Safety(ZTS))対応有無により複数のバイナリファイルが公開されています。開発環境にあった適切なバイナリファイルをダウンロードして下さい。 ダウンロードしたバイナリファイルは、<XAMPPインストールフォルダ>\xampp\php\ext内に保存します。

適切なバイナリファイルを利用しないとXAMPPがそのバイナリファイルを読み込めずXDebugが有効になりませんので注意が必要です。

 

ただ、実は適切なバイナリファイルを確実な方法で選択しダウンロードする方法があるので今回はこの方法を採用します。

バイナリファイルの配布先であるXDEBUG EXTENSION FOR PHPのWebサイトでは、phpinfo()が出力するHTMLソースからOSプラットフォーム、PHPバージョン、スレッドセーフ有無等を解析し、環境にあった適切なバイナリファイルのダウンロードURLを示してくれる親切な機能が提供されています。

XAMPPを起動させた状態で、http://localhost/xampp/phpinfo.phpにアクセスしてその全てのHTMLソースをコピーします。

次に、Xdebug: Support; Tailored Installation Instructionsにアクセスし赤枠内にコピーしたHTMLソースを貼り付け、[Analyze my phpinfo() output]をクリックします。

Xdebug-Support-Tailored Installation Instructions-form

 

すると、phpInfo()の内容が解析され、赤枠内のINSTRUCTIONSにバイナリファイルのダウンロード先とphp.iniに追記すべき情報を示してくれます。

この指示に従い、バイナリファイルをダウンロードして下さい。

Xdebug-Support-Tailored Installation Instructions-Instructions

php.iniの編集

<XAMPPインストールフォルダ>\xampp\php\php.iniを開き、XDebugセクションを以下の通り編集し保存します。

まず、「;report_zend_debug = 0」のコメントアウトを外します。


; This setting is on by default.
;report_zend_debug = 0

2行目先頭のセミコロンを削除して以下の様にする。


; This setting is on by default.
report_zend_debug = 0

次に、XDebugセクションを探し、以下の通りに追加及び編集します。zend_extensionキーには、先のINSTRUCTIONSで示された情報を記載します。

[XDebug]
zend_extension = "C:\xampp\php\ext\php_xdebug-2.2.5-5.5-vc11.dll"
xdebug.remote_enable = On
xdebug.remote_handler = "dbgp"
xdebug.remote_mode = "req"
xdebug.remote_host = "127.0.0.1"
xdebug.remote_port = "9000"
xdebug.trace_output_dir = "C:\xampp\tmp"

XDebugの有効化確認

XAMPPを再起動させ、http://localhost/xampp/phpinfo.phpにアクセスします。下図のようにXDebugの情報が表示されていればXDebugの有効化は成功です。

phpInfo-xdebug

NetBeans設定

NetBeasnを起動し、メニューバーから[ツール] – [オプション]を開きます。

PHPのデバッグタブを開き、デバッガ・ポートに、php.iniにおいて、xdebug.remote_portに指定したポート番号を設定し保存します。

xdebug.remote_port = "XXXX"

NetBeans-option-debug-port

 

以上で、XDebugを利用してNetBeasnでPHPをデバッグするための環境構築は完了です。実行したいPHPプロジェクトの実行構成を設定し、デバッグ機能を実行してみて下さい。

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>