EclipsePDTを使用してコードをステップスルーしています。配列にマウスを合わせると、たとえば「$ _ SESSION = Array [0]」と表示されますが、データは表示されません。
[変数]ウィンドウに表示されるので、これはローカル変数には問題ありませんが、$ _ GET、$ _ POST、$_SESSIONの内容が表示されないことを意味します。
これを修正するにはどうすればよいですか?
EclipsePDTを使用してコードをステップスルーしています。配列にマウスを合わせると、たとえば「$ _ SESSION = Array [0]」と表示されますが、データは表示されません。
[変数]ウィンドウに表示されるので、これはローカル変数には問題ありませんが、$ _ GET、$ _ POST、$_SESSIONの内容が表示されないことを意味します。
これを修正するにはどうすればよいですか?
xdebugを使用していると仮定します。
[変数]ウィンドウを見ると、言及したスーパーグローバル配列(_SESSION、_POST、...)も一覧表示されます。それらが表示されない場合は、xdebugをアップグレードしてみてください。この領域(デバッグ中の変数)については、本当にバグがあることがわかりました。
エディターで、デバッグセッション中に変数名を右クリックすると、メニューに[検査]と[監視]の選択肢があります。
これらの選択肢を有効にするには、右クリックする前にエディターで変数名を選択する必要があることを確認するのに少し時間がかかりました。Ctrl + Shift+Iを押して「検査」することもできます。
「検査」は、拡張可能な可変コンテンツを含むコンテンツアシストウィンドウを開きます。
「ウォッチ」は、「式」ビューに変数を追加します。
「変数」ビューには、拡張可能なコンテンツを含むデバッグコンテキスト内のすべての変数が含まれます。
配列とオブジェクト変数の凝縮されたjsonのような1行の表示形式で、複雑な変数の内容を一目で確認できると便利ですが、それを行う方法はまだ見つかりません。
現在、Eclipse 3.6 Helios SR1、Xdebug 2.1.0、PHP 5.3.0、Wampサーバーを使用しています。
各アレイの左側に小さな矢印があります。これをクリックするとリストが展開され、値が表示されます。
これはXDebug構成設定の問題です。
解決するには: [デバッグ構成] ->[デバッグ構成の選択->[デバッガー]タブをクリック->サーバーデバッガーの[構成]を ます。
この構成ウィンドウには、「変数ビューでスーパーグローバルを表示する」オプションがあります。$ _POST配列はPHP固有のスーパーグローバル変数の1つであるため、この構成オプションが有効になっていることを確認してください。
これで、デバッグセッションを実行すると、すべてのスーパーグローバル変数が[変数]ウィンドウで使用できるようになります。これには、$ _ POST、$ _ GET、$_COOKIEなどが含まれます。