目次
debugging with XDebug
XDebugはWebサーバのphpページをデバッグができるモジュールである。
ここではeclipse上でXDebugを設定する手順を紹介する。
前提として、Eclipse+PDT(All in one)がインストールされているとする。
執筆中の最新版はEclipse3.5である。
次は順番にXDebugの設定手順を見てみよう。
Installation of XDebug
XDebug downloadページからダウンロードできる。
ソース版とWindows binary版があるが、それぞれ環境に応じてダウンロードする。
ここでは、Windows環境を基準に説明する。 執筆中の最新の安定版が2.0.5だったので、2.0.5のWindows binary版を
ダウンロードする。
ダウンロードしたZipファイルを適当なローカルフォルダに解凍する。
C:\phpdebugger\Xdebug2.0.5\php_xdebug-2.0.5-5.2.dll
次はInstallしたXDebugモジュールの場所をphpエンジンに知らせる必要がある。 その設定はphp.iniで行う。 設定部分を次に示す。
[Zend] ; Zend debugger Configuration ; the windows non-thread safe is used only with Zend Core 2.0 ; ; zend_extension_ts=C:/phpdebugger/ZendDebugger5.2.14/5_2_x_comp/ZendDebugger.dll ; zend_debugger.allow_hosts=127.0.0.1 ; zend_debugger.expose_remotely=always [XDebug] zend_extension_ts=C:/phpdebugger/Xdebug2.0.5/php_xdebug-2.0.5-5.2.dll xdebug.remote_enable=true xdebug.remote_host=127.0.0.1 ; if debugging on remote server, ; put client IP here xdebug.remote_port=9000 xdebug.remote_handler=dbgp xdebug.profiler_enable=0 xdebug.profiler_output_dir="D:/temp"
ここで、Xdebugモジュールの位置を指定する際、zend_extension_tsを使用するか、zend_extensionを使用するかを注意して欲しい。
どれを使うべきなのかは、phpinfo()で確認すればよい。
私の環境でのphpinfo()の結果を次に示す。
ここで、Debug Build部分とThread Safety部分を見ると、Debug BuildはNo、Thread Safetyはenable
である。
もし、Debug BuildがYesでThread Safetyがdisableだったら、zend_extensionではなく
zend_extension_debugで指定することになる。
setup of PHP Executables
次はeclipseの設定を見てみよう。 まずは、Window>Preferences>PHP>PHP Executablesの設定だ。
Nameは適当な名前でも構わないので適当に入力する。 最後の項目でdebuggerの選択が出来る。
PDTはZend DebuggerとXDebugをsupportしている。
今回はXDebugを使うので、XDebugを指定しよう。
setup of PHP Servers
次はPHPサーバの設定である。 Window>Preferences>PHP>PHP Serversで設定画面を開いてみる。
ここでは、特に説明する部分はない。
この段階まできたら、一応PHPサーバ上でphpファイルのデバッグが出来るようになる。
後はEclipse上でDebugセッションを実行すれば、ディフォルトで1行からbreak pointが掛かるはずだ。
XDebug install for php4.4.x
因みに、php4.4.x下の環境でXDebugをinstallする際は、php.iniで次のように設定すればよい。
ただし、この場合はXDebug downloadページから4.4バージョンのバイナリファイルをダウンロードする必要がある。
ダウンロードしたdllファイルをphpのextensionディレクトリにコピーする。
extension=php_xdebug-2.0.2-4.4.6.dll
コメント