Log in

SNS サイトを作ってみた - eclipse PDT で開発環境を作る

目次へ戻る

PHP は単にテキストファイルを配置すれば動きます。なので、メモ帳や秀丸といったテキストエディターがあればどうとでも開発できます。とはいえ、やっぱりまともなデバッガーが無いと何かと大変です。
というわけで、eclipse PDT を入れてみました。

eclipse PDT のインストール

http://www.eclipse.org/pdt/downloads/
ここにある Eclipse PDT 3.0.x All In Ones をダウンロードすれば PDT 組み込み済みの eclipse がすぐに使えます。
ダウンロードしてどこかに解凍するだけです。
以前、eclipse を Program Files の下に入れたらディレクトリが深くなりすぎてエラーになってしまったことがあったので、私は c:\ の直下の eclipse-pdp に入れました。
eclipse PDT を日本語化することもできるようですが、私は英語のまま使ってますのでやり方とかはわかりません。

eclipse PDT(PHP Developer Tool)は文字通り eclipse の PHP 開発環境ですが、これだけだと Apache で動いている PHP のデバッグはできません。Zend Server というものもあるようです。exlipse PDT のダウンロードページ(eclipse 公式)にもあるのでこれがいいのかと思ったんですが、どうにもうまくいきませんでした。検索すると Alias がうまく動かないとかなんとかあったんですが、確かにそのあたりがうまくいかなくて今の環境に合わせた設定ができませんでした。ちなみに、exlipse PDT のところにある Zend Server CE っていうのは Community Edition か何かのことで無料で使えるようです(うまく使えなかったのでライセンスとかは調べてません)

Zend Server 以外には XDebug というのがあるようで、XAMPP for Windows の Apache は XDebug が標準で入ってるそうです。なので、これを使うことにしました。

XDebug の有効化

c:\xampp\php.ini の以下の 3行のコメントアウトを外してやります。

zend_extension = "C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable = 1
xdebug.remote_host = "localhost"

そして apache を再起動。
これだけです。

eclipse PDT の設定

eclipse PDT を起動した後、以下の設定をしておいた方がいいようです。

  • メニュー「Window」-「Preferences」-「General」-「Workspace」の「Text file encoding」を UTF-8 にする。(ファイルを新規作成したときに UTF-8 になるようにする)
  • エディターで日本語が表示できない場合は、メニュー「Window」-「Preferences」-「General」-「Appearance」-「Colors and Fonts」の「Basic」のところにある「Text Font」で使用フォントを変更できます。

そして、肝心の XDebug を使うように設定します。

  • メニュー「Window」-「Preferences」-「PHP」-「Debug」で XDebug を選択します。
  • 外部ブラウザーを使う場合は、「Window」-「Preferences」-「General」-「Web Browser」で Use external web browser を選んで IE とかにしておきます。(私の環境だと IE が 3つくらいあってどれがどれかわかんないんですが、とりあえず一番上の IE にしたら特に問題なくデバッグできています)

プロジェクトを作る

すでに動いている Elgg を eclipse PDT 上でデバッグ実行できるように eclipse 用のプロジェクトを作ってやります。

メニュー「File」-「New」-「PHP Project」でプロジェクトを作成します。

  • Project Name に適当なプロジェクト名を付けます。Elgg など。
  • Create project at existing location を選んでソースのフォルダー(C:\elgg\www)を指定します。

他の設定はデフォルトのままで大丈夫なようです。
これで、ソースファイルは元の場所のままで eclipse PDT プロジェクトを作れます。

続いてデバック構成の設定をしてやります。
メニュー「Run」-「Debug Configurations...」で PHP Web Application を右クリックして New します。
たぶんそのままだと http://localhost/ で動くようになるんじゃないかと思いますが、Elgg を http://192.168.1.1/ のように localhost 以外で動くように設定している場合は、これを合わせてやらないといけません。それには PHP Server のところにある Configure... ボタンをクリックし、Base URL を http://192.168.1.1 などにしてやります。
あとは File のところの Browse ボタンで index.php を選択し、URL の Auto Generate をオフににして URL が http://192.168.1.1/elgg/index.php のようになるようにしてやれば OK のはずです。

これで「Run」-「Dubug」で実行すればブレークポイントを仕掛けたり、変数の値を見たりといったことができるはずです。

目次へ戻る