= デバッグ方法 = == Eclipse-PDTでのPHPのデバッグ == 以下は一つのLinux-BOX中でapache/PHP/Eclipse-PDTを使い、PHPプログラムをデバッグ/開発するための環境作成方法。 apache/phpが普通に動作する環境設定は終了しているものとする。OSはCentOS 4.8。 === Eclipse-PDTのインストールとPHPプログラムの用意 === Eclipse-PDTをインストールする。プロジェクトを作成してそこに対象とするPHPソースを格納する。 === apacheの設定 === 簡単のためにドキュメントルートを先のプロジェクトとする。apacheがアクセス可能なように権限を設定する。 === phpの設定 === 通常のPHP環境に加えてPHPデバッグ用の設定が必要になる。まずはphp-devel, php-pearをyumでインストールする。 ここではxdebugを選択する。「pecl install xdebug」でxdebugをインストールする。 /etc/php,dディレクトリ内に「xdebug.ini」というファイルを作成し、以下を既述。 {{{ zend_extension=/usr/lib/php4/xdebug.so xdebug.collect_params = On xdebug.dump.GET = * xdebug.dump.POST = * xdebug.remote_autostart=off xdebug.remote_enable=on xdebug.remote_handler=dbgp xdebug.remote_mode=req xdebug.remote_host=localhost xdebug.remote_port=9000 }}} ただし、zend_extensionはPHPのビルド状態によってzend_extension_tsなどとしなければならないこともある。 「php -v」とすると、以下の表示。 {{{ PHP 4.3.9 (cgi) (built: Jan 13 2010 18:43:22) Copyright (c) 1997-2004 The PHP Group Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Xdebug v2.0.5, Copyright (c) 2002-2008, by Derick Rethans }}} また、PHPプログラム中のphpinfo()での表示でxdebugが有効になっていることを確かめること。 === Eclipse-PDTでのデバッグの開始 === JDTでJavaプログラムのデバッグを行なう場合と全く同様に、PDTでもPHPプログラム中にブレークポイントを置くことができる。 もしブレークポイントで止まらない場合は、PDTのデバッグ設定か、xdebug/PHPの設定に間違いがある。 PDTでのデバッグ設定では、「Server Debugger」を「XDebug」とすること。 === 参考資料 === * [[http://keicode.com/cgi/debugger-enhancement-with-xdebug.php|Xdebug によるデバッグ機能拡張]]