忍者ブログ
Admin§Write

ぷろぐらみんぐ徒然

文系4大卒がなぜか職業ぷろぐらまになって早10年。 とっくに三十路は過ぎた。 いつまでも派遣プログラマだと死亡フラグが立つのでそれよりきり前に脱出成功。今後の事はまだ良くわからん。 ここのところ愛してやまないバンドはFuzzy Control。 興味を持ってもらえたらうれしいです。 この欄だとタグが使えないみたいなのでURLも。 http://www.fuzzycontrol.jp/

HOME ≫ Entry no.13 「[PHP開発環境] PHPをデバッグする」 ≫ [18] [17] [16] [15] [14] [13] [12] [11] [10] [9] [8]

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


[PHP開発環境] PHPをデバッグする

前回はPHP5にZendDebuggerを導入するところまで行った。

今回はいよいよEclipseでデバッガ起動をしてみる。
その前に、Eclipse側の設定を行う。

まず、Preferences -> PHPより Debugを選択する。
phpEclipse-20081209_001.jpg
各設定項目を以下のように埋める。
PHP Debugger・・・Zend Debuggerf
Server・・・Default PHP Web Server
PHP Executable・・・localhost
エンコーディングはとりあえずUTF-8。

phpEclipse-20081209_002.jpg
PHP DebuggerのConfigureアンカー。各デバッガで利用するポートの設定だろう。

phpEclipse-20081209_003.jpg
ServerのPHP Serverアンカー。PHPを稼動させるためのWebサーバの設定を行う。
(注・いろいろ触ってるうちに先に作っちゃってたっぽい。本来はここではじめて行う設定かも・・・)
phpEclipse-20081209_004.jpg
PHPサーバを選択してEdit。
Eclipse上で使う設定名とURIを入力。(http://localhost)
phpEclipse-20081209_005.jpg
Path on ServerにPHP保存ディレクトリの絶対パスを入力し、Local Pathにワークスペース上のパス(プロジェクト名でOKか?)を入力する。
phpEclipse-20081209_006.jpg
PHP Executableアンカーより、PHP実行ファイルのパスを設定する。
Nameは何でもOK。
Executable Pathはphp.exeへの絶対パス。
PHP ini fileはphp.iniファイルへの絶対パス。
テストによってphp.iniファイルを差し替えたいときは便利かも。
PHP debuggerはZend Debuggerを選択。

ここまで設定して、ワークスペースよりPHPファイルを選択してDebug -> PHP Script。
普通にデバッガが起動してステップ実行ができるようになりました。
phpEclipse-20081209_007.jpg
きちんとサーバ環境変数も拾ってくれるしなかなかイイ感じ。

と、ここでふと思ったのだがApache起動してないじゃん。
ここでこんどはこのまま「Debug as PHP Web Page」を実行してみる。
今度はEclipse上でブラウザが起動して、案の定実行エラーになった。

更に、今度はApacheを起動した上で「Debug as PHP Web Page」を実行。
すると、同様にEclipse上でブラウザが起動してデバッグモードに突入しました。
きちんとApacheへのアクセスをデバッグするときはApache起動の上でやらないとだめってことね。(当たり前)

では、今度は外部のブラウザからアクセスしてみる。
が、普通にアクセスしてみてもEclipse上でとまってくれない・・・
Tomcatだとここでとまってくれるのに。
Eclipse上のブラウザのURLを見てみる。
http://localhost/phptest/test.php?
debug_session_id=1005&start_debug=1&debug_start_session=1&debug_host=hogehage%
2C127.0.0.1&debug_no_cache=1228750711078&debug_port=10000&
send_sess_end=1&original_url=http://localhost/phptest/test.php&debug_stop=1
なげー。
これ、全部クエリで渡してるのかッ!
このURLをブラウザに貼り付け、実行するとようやくEclipse上でとまってくれました。
Zendのデバッガって無理やりクエリでデバッグ用のパラメタを送ってやってるのね・・・
デバッグ自に必要かどうかはわからないけど、生リクエストでデバッグはできないものなのだろうか?
どっかで見かけたけどZendではMod_Rewriteが効かないらしいがこのあたりが原因?

今度はXDebugの方も見てみよう。

まぁ、何はともあれ、Eclipse上でのデバッグ環境はなんとなくできたということで・・・
PR

●Thanks Comments

●この記事にコメントする

お名前
タイトル
文字色
E-mail
URL
コメント
絵文字 Vodafone絵文字 i-mode絵文字 Ezweb絵文字
パスワード ※投稿者編集用
秘密? ※チェックすると管理人にしか見えません

●この記事へのトラックバック

TrackbackURL:

≪ Capture STAFF - Light |PageTop| [PHP環境構築] PHP側のデバッグ環境を整える。 ≫

※ 忍者ブログ ※ [PR]
 ※
Writer 【へっぽこPG】  Design by NUI.T  Powered by NinjaBlog