MacOSXにEclipseのPHP Development Tools(PDT) && Xdebugをインストール (な予定だったんだ。うん。でもZend Debuggerになっちゃったんだ。)
Comments: 1 - Date: September 30th, 2007 - Categories: Mac, PHP
今までIDEはPHPEclipseを使ってたけどなんだか更新止まってる(?)みたい。
PHPEclipseはEasyEclipse for LAMPで他のプラグインも一気に入れていたけど、Eclipse3.3になったのにEclipse3.2のままで一向にバージョンが上がる気配がない。
なので、PDTを入れてみた。インストールは「PDT All-in-One」を使った。
http://download.eclipse.org/tools/pdt/downloads/のBuildNameのリンクの先にあります。
(環境はMacOSX TigerでMAMP(PHP5)を使ってます。)
PDTのインストールはすんなり終わったので次はXdebug。
- http://aspn.activestate.com/ASPN/Downloads/Komodo/RemoteDebugging
上のサイトからPHP Remote Debugging(自分はIntel Macなので Mac OS X / x86の最新バージョン(現時点2007/09/29でKomodo4.2))をダウンロードする。 - ダウンロードしたものを解答すると、PHPのバージョンごとにディレクトリが分かれているので使っているバージョンのディレクトリの中のxdebug.soをMAMPの
/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20050922/xdebug.so
に入れる - php.ini (/Applications/MAMP/conf/php5/php.ini) に以下を追記。
[xdebug]
zend_extension=/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20050922/xdebug.so
これでXdebugが使えるようになりはしたけど、スクリプトを実行 or デバッグするとEclipse内のブラウザで表示されない。
毎回毎回ブラウザでタブが開くので本気でウザくなった。Eclipse内で完結できないのかと思って検索してみたけどPDTのQ&Aに
Debug (Xdebug)
デバッグ終了時、ブラウザが開いてしまうのですが?
→ Xdebugの場合、この動作は仕様です。
→ 回避しない理由は不明(^^;) → cookieを削除するため、だそうです.
と書いてあったので無理なのかもしれない。Xdebug使ってる人はみんな毎回ブラウザで開かれてるんだろうか。
で、デバッグのたびに開かれるウインドウをデバッグのたびに閉じるのは面倒すぎるので、Zend Debuggerを使うことにした。
PDTのall-in-on Packageだと最初から入ってたのかもしれないけど、EclipseのSoftware UpdateのFind and Installから一応入れた。
Zend Debuggerが入ったら、Run → Debug As → PHP Scriptとかやるとデバッグ突入。

これでおしまい。
Xdebugはなんでブラウザを立ち上げるんだ。設定とかでなんとかなんないのか。
Zend DebuggerだとCakePHPのデバッグがうまくいかないらしいし。どうしたもんだ。
※追記(2007/11/2)
http://www.php-seed.net/blog/archives/category/xdebug
http://www.fchouse.com/archives/debugging-php5-with-eclipse-pdt-under-osx-a-piece-of-cake
