IntelliJ IDEA13 PHP開発環境設定メモ
先日とうとう、IntelliJ IDEA13 ULTIMATEを購入しました。 これで「えっ。JetBrains勉強会とか開いておきながらCommunity Edition(無償版)なの・・・?」 と言われる日々とはもうおサラバです。
というわけで、早速PHP開発の設定を行ったのでメモ。
環境
Mac OS X 10.8.5
PHP 5.4.22
IntelliJ IDEA 13.0
PHPStorm7もおそらく同じだと思います。 参考になれば幸いです。
IntelliJ IDEA 初期設定
IDEA自体の初期設について。一応さくっと。 Macの方はPreferences -> keymap で KeymapsをMac OS X 10.5+に変更するといい感じです。 Eclipseからの移行の方ならEclipseがいいかも。 (いつの間にかEclipse (Mac OS X)なんてキーマップがある・・・!) 残念ながらVimキーマップはありません。「どうしてもVimっぽく使いたい!」という方はideaVimというプラグインを試してみてください。
あとはとりあえずPreferences -> Editor -> Appearanceの 「Show line number」「Show whitespaces」をONにしておいて、インターフェイスが黒い方がいい方はPreferences -> Appearance -> ThemeをDarculaに設定しておけばOK。
初期設定に関しては以下のクイックスタートが参考になります。 IntelliJ IDEA クイックスタート | サムライズム
(余談ですが13からは「Allow placement of caret after end of line」がデフォルトOFFになったそうですね。よかったよかった。)
PHP設定
ここから、PHP関連のメモです。
ローカルにPHP5.3+Apatcheの環境があるのですが、5.4を使ってみることにしました。 Homebrewでさくっとインストール。php.iniはとりあえずタイムゾーンだけ「Asia/Tokyo」に設定。
Preferences -> PHP を開いて、PHP language levelを設定。 次にInterpreterの右の「…」をクリック。
下記の画面が立ち上がるので、左上の「+」を押してInterpretersを追加。 Nameに適当な名前をいれて、PHP homeにPHPへのパスを入力。 使用するPHPバージョンがちゃんと下に表示されればOKです。
次にサーバー設定。 ビルトインサーバーで実行ができるよう設定します。
Run -> Edit Configurations を選択してRun/Debug Configurationsを起動。 左上の「+」をクリックして、Add New ConfigurationからPHP Buit-in Web Serverを選択。 (PHP Buit-in Web Serverが表示されていないようなら、一番下の30 more itemsをクリック。)
Nameには適当な名前を入力。 Hostはlocalhost、ポート番号はデフォルトの80は他で使用しているため、8000に変更。 Document rootには動かしたいプロジェクトのドキュメントルートのパスを入力。
これでOKボタンを押下するとサーバーが追加され、実行(Run)できるようになります。
ApacheなどのWebサーバーを準備しなくてもPHPの動作確認環境を作ることができました。 便利便利。
Xdebug設定
せっかくIDEを使うのだから、ブレイクポイントで実行を停めたい!ステップ実行したい!! 調べると、どうやらXdebugを使うといいらしい。ということでデバッガの設定もしました。
インストールはこちらもHomebrewでさくっと。
brew install php54-xdebug
/usr/local/etc/php/5.4/conf.d/ext-xdebug.ini
に
xdebug.remote_enable=1 xdebug.remote_port=9001
を追記。 (デフォルトのポート番号(9000)は何かとよく使うので9001に変更しておきました。)
ここで、
xdebug.remote_autostart=1 xdebug.profiler_enable=1
を設定するかどうかで迷いました。 デバッグとかプロファイラとかって必要な時だけOnにしたい気がするんだけど、どうしたら・・・と思い、とりあえずPHPサーバー起動時のオプション引数にしておいて、デバッグOnのもの、プロファイラもOnのもの・・・と複数サーバーを作成してみたのですが。
なんと、JetBrains公式にデバッガ、プロファイラのOn/Offを切り替えるブックマークレット生成ページがありました。
Zend Debugger & Xdebug bookmarklets generator for PhpStorm
というわけで、ここで生成したブックマークレットをブックマークに登録しておいて、必要に応じてOnOff切り替えることにしました。めでたしめでたし。
Xdebugのインストールが完了した段階でIDEAのInterpretersを確認すると、Xdebugのバージョンが表示されていました。 自動検出してくれるらしいです。
次はデバッガの設定。 Preferences -> PHP -> Debug でXdebugのポート番号を設定。 デフォルト値が9000なので、ポート番号を変更していない場合は特に設定の必要無し。
これで完了です。 ポート番号を変えたりしていなければ、特に設定することはないってことですね。 (ここはIDEではなくプロジェクトの設定なので、違うプロジェクトを作る毎に設定する必要があるので注意。)
これでデバッグセッションが開始されている状態でStart Listen for PHP Debug Connectionsボタンを押すと、デバッグ情報を受信するようになって、ブレイクポイントで実行を停めたり変数の中身を見たりできます。
未接続状態
接続状態
データベース(MySQL)接続も設定したのでそれも書くつもりだったのですが、長くなってしまったのでとりあえずここまで。
PHPもJavaと同じIDEで快適に開発できるというのはやっぱり嬉しい! せっかく買ったのだし、しっかり活用していきたいと思います。