2012-03-11 17 views
3

私はCakePHPアプリケーションをデバッグするためにEclipseを手に入れています。私はいくつかのチュートリアルを読んでみました(どれもそれほど素晴らしかったです)。私はZendとXDebugの両方を使ってみました。Eclipse PDTデバッグ設定(XDebug/Zend)

正しく設定したら、このことをどのように使っているのか正確にはわかりません。

私はPHPエディタでPHPファイルを右クリックし、 'debug php web application'を選択してブレークポイントを設定しようとしましたが、ブレークポイントにヒットしません。それは私の通常のURLに添付いくつかのGETパラメータを使用してEclipse内ブラウザを開きます:?

debug_host = 192.168.1.2%2C127.0.0.1 & start_debug = 1 & debug_port = 10000 & original_url =のhttp%3A%私は私のプロジェクトPHPのデバッグpropertiではわからなかった2F%2Flocalhost%2Fparticipants & send_sess_end = 1 & debug_stop = 1 & debug_start_session = 1 & debug_no_cache = 1331422177353 & debug_session_id = 1000

一つのことesはPHPの実行可能フィールドです。自動的に 'none'に設定されたので、 '/ usr/bin/php'を指すエントリを作成しなければなりませんでした。多分、これは正しくないでしょうか?

ちょうどいくつかのecho文がある1つのphpファイルを使って簡単なアプリケーションを作成しました。私はその中のブレークポイントにヒットするデバッガを得ることができません。私はそんなにトラブル私の人生の中で動作するようにデバッガを取得していたことがありません https://sites.google.com/site/kylephpinfo/phpinfo.html?attredirects=0&d=1

...あなたのphp.iniのルックスから

+0

サーバーにデバッガをインストールして構成しましたか? – Phil

答えて

6

、デバッガ拡張機能:ここで

は私のphpinfo()です読み込まれませんでした。通常、最初のボックスのすぐ下に、 with Xdebug v2.1.0, Copyright (c) 2002-2008, by Derick Rethans ...

のように表示されます。まず、サーバーのPHP iniが正しく設定されていることを確認してください。 httpd.confのがポイントしているphp.iniのを見つけて、このようなものを含めるように編集:

zend_extension_ts=C:\php\ext\php_xdebug-2.1.0-5.3.0.dll 
xdebug.remote_enable=1 
xdebug.remote_host=127.0.0.1 
xdebug.remote_port=9000 
xdebug.remote_handler="dbgp" 

注:

  • tsはスレッドセーフなので、必ずパッケージあなたことを確認意味デバッガのために得たもtsです。
  • セットアップは、Linux/Mac、および.soデバッガーの拡張機能と非常によく似ています。
  • これを正しく実行する最も簡単な方法は、互換性のあるデバッガ拡張機能を提供するXAMPPのようなサーバーを設定することです。

php.infoにxdebug(またはZend Debugger)がロードされていることが表示されたら、すぐに実行できます。

ローカルマシンにサーバーがある場合、最も簡単な方法は、htdocs内でプロジェクトを作成することです。これにより、デバッガーがブレークポイントを解決しようとしているときや、PDTが正しいファイルを開こうとしているときに、ソースルックアップの問題を防ぐことができます。 (あなたは操作できるpath mappingの設定がありますが、これで問題は解決します)。

PHP実行可能なデバッグ(PHPスクリプトデバッガ)と混同しないでください。リモートデバッグを実行する必要があります(同じマシン上にあっても)。 PHPスクリプトは、そのままの状態で実行される単純なPHPスクリプトのためのものです(サーバー上ではなくCLIのように)。

ご希望の方にお勧めします。 :)

更新:zend_extension_tsディレクティブを使用するためのPHP 5.3の後に必要はありません、代わりにあなたがデバッグを行うと、それはファイルの2番目のコピーを開くんPhp.net http://php.net/manual/en/ini.core.php#ini.zend-extensionに言及しただけのように

0

を代替としてzend_extensionでしょうか?もしそうなら、デバッグするリモートバージョンをプルダウンしているので、そのファイルにブレークポイントを設定する必要があります。

関連する問題