[php]18分で学ぶEclipse+PDT

Written by uechoco 3月 21

 Eclipse+PDTの使い方を学んでいるのですが、PDTの機能を簡潔にわかりやすくまとめているムービーをYouTubeで見つけました。

YouTube – PHP Tutorial: Using Eclipse+PDT as a PHP IDE (Part 1 of 2)
YouTube – PHP Tutorial: Using Eclipse+PDT as a PHP IDE (Part 2 of 2)

 PDTのダウンロードから一通りのIDEの機能までを、画面操作を見ながら覚えることができます。ナレーションが英語なのですが、そんなに苦ではありませんでした。9分x2で、計18分あればPDTのエディタ機能が使えるようになります。

 ムービーの構成はこんな感じです。

Part 1

  • PDTのダウンロード
  • Eclipseの起動
  • PHPパースペクティブへの切り替えと、お勧めの小窓配置
  • プロジェクトの作成とファイルの作成
  • アウトライン
  • 入力候補
  • [Ctrl]+マウスオーバーで、リンク機能

Part 2

  • コードフォーマット
  • 関数一覧とマニュアル閲覧
  • タブをダブルクリックすると、エディタエリアの最大化←→元に戻す
  • TODO・FIXME([タスク]の追加)
  • 構文エラー、エラー一覧、エラー表示
  • PHPDocコメント
  • テンプレート機能(スニペットのようなもの)

 上のリストを見てもらえばわかりますが、18分のムービーの中にエッセンスがしっかり詰まっているので、そこらへんの解説サイトを見るよりも役に立つと思います。

[php]PHPEclipse?PDT?RSE? Eclipseわかんなさすぎ。

Written by uechoco 3月 18

以前のバイト先での開発環境の名残で、未だにDreamweaverで開発していた私ですが、Eclipseを仕事で使う機会に恵まれて(?)、EclipseでPHP開発をすることにしましたLet's noteのメモリも1.5GBに増えたことですし。試してみて感じだのは、メモリを増やす前よりは断然軽快です。VMのFedora7(256MB設定、メモリ300MB消費)とEclipse(PDT、日本語化、メモリ300MB消費)とFirefox(メモリ160MB消費)を同時に起動しても全然問題ないです。

とりあえず、(まだ仕事を始めたわけではないですが、)セットアップを済ませようと思って、Eclipse 3.3.2 + PHPEclipse 1.2.0の組み合わせのものと、Eclipse 3.3.2 + PDTの組み合わせのものと、2つのEclipse環境を用意しました。両方ともPleiadesによって日本語済みです。(後者はPleiades All in one PHPで一発インストール)。

両方とも、[ウィンドウ(W)]-[設定(P)...]を見てみて、自分のわかる範囲(想像できる範囲)で設定をしてみました。PDTの本を前に買ったので、それを見ながらやったら簡単に設定できました。PHPEclipseのほうは勘でやりましたが、設定項目が似てたのでなんとかなったかな。エンコードもUTF-8をデフォルトにして、タブをスペースx4に置き換えるような設定もしました。

とりあえず、何かしようと思って、適当なオープンソースとしてOpenPNEのアーカイブを読み込ませてみました。

・・・・??

たくさんエラーと警告を吐きまくります。PDTのほうは、テンプレートファイルのSmartyタグとか、細切れのテンプレートのタグの開閉関係のミスマッチとかでエラーを吐いているようでした。PHPEclipseのほうは、意味のわからないエラーばかり吐いています。require_onceのファイルがないとかは許せるのですが、関数の中括弧が閉じてないとかそういうエラーが意味不明でした。もしかしたらPHPEclipseのパーサーは性能良くないのかな?

エラーは無視して、サーバーにファイルをアップロードしようと思ったのですが、アップロードの仕方がわかりません。PDTとかPHPEclipseにはアップロード機能とかないのかな?少なくともPDTのほうはhttp://localhostとかいう設定はしたんだけどなぁ。。。PHPEclipseも勝手にXAMPPのパスを読み込んだりはしているのに。。。うーん・・・PHPEclipse環境のほうは、プラグインとか全く入れてないので、ここら辺でストップして、PDTのほうに集中します。

いろいろいじってたら、RSE(Remote System Explorer)なるプラグインが入っていることを発見しました。名前的にいけそうな気がしますね。さすがPleiades All in One!!。

んーーーー(♪

んーーーー(汗

なんかこう・・・まずは設定パターンによって接続方法が違うのがピンとこなかった。VMでFedora7を動かしてるので「Linux」構成で接続プロファイルを作ればいいのかなって思ったんですが、SSHは繋がるのに、SFTPができなかったり、ファイル一覧が読み込まなくてショックでした。どうやら「Linux」構成だと、dstoreっていうRSE独自の接続プロトコルで繋ごうとするらしいです。しょうがないから別のプロファイルで「SSHのみ」構成を作ってみたら、こっちはSSHとSFTPが出現しました。

キタッ!!。これかっ!

って思ったんだけど・・・なんか違う・・・ファイルツリーが1つしかないから(2つ以上出せるのかわからないから)、ものすごく使いにくいFTPソフトだよ・・・プロジェクトのこのフォルダを、リモートのこのフォルダにアップロードってのが欲しいのにやり方がわからない。できそうな気がするのになぁ・・・

Eclipse使っている人って、ファイルのアップロードはどうやってるんですか??できれば教えていただきたいのですが・・・

関連:
[雑記]Let's note CF-W4のメモリを増設したよ
[php][書籍]『 Eclipse 3ではじめる PHP 5プログラミング入門 Eclipse PDT対応』

[php]Eclipse+PDT+xamppでcakephp1.2入門

Written by uechoco 10月 19

 先日紹介したPleiades All-in-One EclipseのUltimate版をインストールしたので、EclipseもPDT(PHP Development Tools)も初挑戦しています。

 第一印象、やっぱりEclipseって重いですね。

 そんなことはさておき、最初に「[XAMPP+Eclipse PDT] WindowsでPHP開発環境[文系大学的IT系の悲哀]」を読んで、phpの実行環境やローカルサーバーの定義をしておきましょう。それから、PHPのパースペクティブに切り替えて、PHPのプロジェクトを作成しました。

PHPプロジェクトの作成(※クリックで拡大)
PHPプロジェクトの作成

 んでもって、プロジェクトに、解凍したcake1.2alphaを突っ込んだら、急にEclipseが重くなった。なんかビルド処理?をしているようで、しょうがなく待っていたらエラーをたくさんはいてきた。

ビルド処理を終えた後に大量のエラー(※クリックで拡大)
ビルド処理を終えた後に大量のエラー

 最初のneat_string.phpのエラーはヨーロッパ系の文字の変換テーブルみたいなのが文字化けして構文エラーをだしていた。いろいろいじっていたらプロジェクトを右クリックして[プロパティー]ダイアログをだし、[リソース]項の[テキスト・ファイル・エンコード]フィールドをその他(UTF-8)にして、[OK]すると、プロジェクト全体をUTF-8で再びビルドし始めて、今度はエラーがだいぶ減った。

[プロパティー]ダイアログの[リソース]項(※クリックで拡大)
[プロパティー]ダイアログの[リソース]項

UTF-8でビルド処理を終えた後はエラーが減った(※クリックで拡大)
UTF-8でビルド処理を終えた後はエラーが減った

 残りのエラーは、調べましたが、どれもたいしたことないエラーです。ある1つのphpファイル内で、HTML構造のタグが対になっていないとか、そういった類のエラーです。CakePHPはheader.phpとfooter.phpを分離している部分があるので、1つのphpファイル内でHTML構造が完全ではないことがあります。まぁ、HTML構造までしっかり見ているEclipseがすごいんだか、若干お節介なんだか。エラーを無視する方法がわからないので、スルーします。

 CakePHPの勉強開始です。書籍は『PHPフレームワーク完全マスター―PHP5.2.3PHP4.4.7対応』です。Part1のZendFrameworkをすっとばして、Part2のCakePHPから読み始めてます。CakePHPのバージョンは本に習って1.2alphaです。まずは、DBの設定とCAKE_SESSION_STRINGの値の変更をしました。次に/app/models/sample.phpにSampleモデルを書き、/app/controllers/samples_controller.phpにSamples_Controllerコントローラを書きました。PHPファイルの作成は、親ディレクトリを右クリックして、[新規]->[PHPファイル]で出てくるダイアログできます。とりあえず現時点で実行してみると、次のようなエラーになりました。

SamplesControllerのindexアクションに対するViewがない(※クリックで拡大)
SamplesControllerのindexアクションに対するViewがない

 そう、Viewを忘れてました。/app/views/samples/にindex.ctpを作らなきゃいけなかったみたいです。ん?ctpCakePHPの1.2からビューの拡張子がthtmlからctpに変わったのか。知らなかった。じゃぁ、さっきと同じように[新規]->[PHPファイル]で新規作成ダイアログを出して、index.ctpを入力したら、拡張子がだめだって言われました。めんどくさいなぁ。。。;;

index.ctpファイルは拡張子がダメダメだから作りたくないです(※クリックで拡大)
index.ctpファイルは拡張子がダメダメだから作りたくないです

 どうやらPHPファイルとして拡張子の関連付けを行ってなければ[PHPファイル]新規作成ダイアログからは作れないオチらしい。いろいろと設定を探してたら、見つけました。[ウィンドウ]->[設定]ダイアログの[一般]->[コンテンツ・タイプ]項のツリーの、[テキスト]->[PHP コンテンツ・タイプ]アイテムです。長いから、画像見てもらったほうが早いです。

*.ctp/*.thtml拡張子の追加(※クリックで拡大)
*.ctp/*.thtml拡張子の追加

 PHP関係の拡張子として*.ctpと*.thtmlを追加しておきました。これで[PHPファイル]新規作成ダイアログからindex.ctpが作れるようになりました。ここに適当なHello World入れて、ようやくSamplesコントローラのindexアクションが表示されました。

Hello Worldでた(※クリックで拡大)
Hello Worldでた

 ここまで出るのに結構時間かかったなぁ。CakePHPの勉強っていうより、Eclipseの勉強の割合のほうがぜんぜん大きかったり(汗 とりあえず、どっちもがんばりますか。


[php][Eclipse]PDT(Eclipse PHP Development Tools) 1.0リリース

Written by uechoco 9月 20

巷で話題ですが、Eclipse Foundationから、PDT(Eclipse PHP Development Tools) 1.0がリリースされたらしい。PDTのプロジェクト自体はZend TechnologiesとIBMがEclipseに提案したことから始まったそうな。

機能としては、コードハイライトやコードアシスト、折りたたみ、エラー通知、関数一覧などなど。Eclipseの恩恵を受けつつPHPの開発ができるって言うのが一番すばらしい機能なのかもしれない。

昔からPHPEclipseやKoebi Studioなど、EclipseのPHPプラグインはいくつかあったけど、Eclipse Fundationがリリースするとなるとブランド力ですぐにEclipse+PHPの開発環境のスタンダードになりそうだ。個人的にはAptanaがPHPに対応したことも気になるけど、やるならPDTかもね。

CodeZine:Eclipse公式PHPプラグイン「PDT 1.0」リリース(開発ツール)
http://codezine.jp/a/article/aid/1720.aspx

EclipseとPHPのWin-Win関係は生まれるか ? @IT
http://www.atmarkit.co.jp/news/200709/20/eclipse.html

CakePHP のおいしい食べ方: PDT(Eclipse)+xdebug
http://cakephp.seesaa.net/article/54874514.html