2

Xdebugがリモートデバッグクライアントに送信する変数の値の最大文字列長はどれくらいですか?これは変更できますか?

私はこれをドキュメントで見つけただけです:

xdebug.var_display_max_dataタイプ:整数、デフォルト値:512変数がxdebug_var_dump()、xdebug.show_local_vars、または関数トレースのいずれかで表示されるときに表示される最大文字列長を制御します。この設定は、リモートデバッグ機能を介してクライアントに送信されるデータの量には影響しません。

プログラムでHTMLドキュメント全体を作成しているコード(elgg、elglib.php-> elgg_view_layout())を使用していますが、監視する必要のある変数値が切り捨てられているようです。

PECLからインストールされたOSX10.6.7、PHP 5.3.4、Xdebug2.1.1を実行しています。

4

1 に答える 1

3

私の理解では、それは使用するデバッグクライアントによって異なります。

デバッグクライアントがXdebug2のDGBPプロトコルを使用している場合、送信する可能性があります

feature_set -i <transaction_id> -n max_data -v 2048

たとえば、property_getコマンドが最初に取得する最大データ長2048バイトをネゴシエートします(デバッグエンジンが他の方法で使用するデフォルトの長さの代わりに)。

データが2048バイトより大きい場合、デバッグクライアントはproperty_valueデータ全体を取得するコマンドを送信できます。

したがって、技術的には、最大長を変更したり、データ全体を取得したりしても問題はありません。

問題は、デバッグクライアントがそのようなfeature_setコマンドを送信するか、コマンドをサポートするか、そして最も重要なことは、設定/構成のどこにでもproperty_value送信される値を変更できるかどうかです。max_data

于 2011-04-21T21:58:06.430 に答える