1

そのため、私は最近、アドホック デバッグから、より洗練された方法への一歩を踏み出したばかりで、dump苦労しています。print_recho

Zend Framework、Aptana、Zend Debugger を使用しています。

現時点では、カスタムコントローラーをデバッグしようとしていますが、何を試してもブレークポイントに到達しません。その間に認証があり、メニューを使用しているためです。

質問:

  1. 認証の時点でアプリケーションを中断させ、ブラウザにログインし、特定の uri に移動してからデバッグを続行するにはどうすればよいですか?
  2. MVCでZend Frameworkにブレークポイントを設定するのに適した場所は何ですか?
4

4 に答える 4

1

次のような定数を設定する方が簡単ではないでしょうか。

define('MODE_DEBUG', 1);

次に、認証プロセスをチェックインします。

if($obj->myLoginMethod() || constant('MODE_DEBUG') == 1){

}

誰もその定数に注入することはできません、そして起こり得る最悪のことはあなたが私の間違いでデバッグモードを離れることになることです...

定義の前にチェックを入れることができます:

define('MODE_DEBUG', (false !== strpos($_SERVER['HTTP_HOST'], 'dev.mysite.com') ? 1 : 0));
于 2008-12-05T13:54:32.003 に答える
1

リクエストの途中で現在のユーザーの認証の詳細を変更したいですか?

これは不可能だと思います。Zend Debuggerは、ほとんど読み取り専用のツールです。たとえそうであったとしても、使用しているフレームワークがこれを処理できると想定しています。つまり、内部状態を変化する入力データと常に同期させようとする必要があります。

この特定の問題を解決する方法を尋ねる代わりに、認証を変更する必要がある理由を教えてください。デバッガーでスクリプトを起動しているようですが、ユーザーセッションがないため失敗します。

Zend Debuggerには、現在のページのデバッガーを開始できるブラウザーツールバー(http://files.zend.com/help/Zend-Studio-Eclipse-Help/zend_debugger_toolbar.htm )があります。デバッガーには、ブラウザーが送信するすべての情報(Cookie、投稿データなど)が含まれます。POSTフォームのデバッグに役立つ「次のページのデバッグ」設定もあります。これはあなたが望むもののように聞こえます。

于 2008-12-06T11:39:06.363 に答える
1

おそらく、ダンプソリューションを再考する必要があるだけです(ブレークポイントを使用するというアイデアは気に入っていますが、経験豊富なしゃっくりの後に引き返し、Zend Studioを使用しています)。アプリケーションをデバッグするために、Zend_Log と Zend_Log 用のfirebugライターを利用しています。firebug はログをfirebugに出力します(注意: firefox 用のfirephp拡張機能もインストールする必要があります)。ロガーをレジストリに保存すると、醜いダンプでビューを台無しにすることなく、多くのデバッグを実行できます。

于 2008-12-06T22:27:17.070 に答える
0

わかりましたので、もう少し zend デバッガーで遊んでみました。(あなたの質問は古い悪魔をかき立てました)そして私はついに「適切な」デバッグ方法を見つけました。ログイン後にデバッグするための最初の質問に答えるには、Firefox または IE 用の zend ツールバーをインストールします。[デバッグ] メニュー項目の右側には、いくつかのオプションを含むドロップダウンがあります。オプションの 1 つは「次のページ」です。したがって、ログイン画面に移動して「次のページ」を選択し、資格情報を入力して送信すると、次のページがデバッグされます。

于 2008-12-09T16:17:54.427 に答える