私はいくつかの文字列を持つ配列を持っています
$array = array("string1","string2","string3");
しかし、これらの文字列は非常に長く、時には2000+の長さもあります。だから私がするとき
echo "<pre>";
var_dump($array);
echo "</pre>";
次のようなものが表示されます
string 'zzzzzzzzzzzzzzzzz '... (length = 994)
string 'yyyyyyyyyyyyyyyyy '... (length = 1287)
string 'xxxxxxxxxxxxxxxxx '... (length = 1718)
完全な文字列の代わりに。アレイのコンテンツ全体を表示するにはどうすればよいですか?そして、尋ねる人のために、HTMLタグが含まれているので、私はecho $array[string];
Xdebugを使用しています。これは、デフォルトのvar_dump()
をオーバーロードして、よりきれいでより構成可能な出力を提供します。デフォルトでは、一度に表示される情報の量も制限されます。より多くの出力を取得するには、いくつかの設定を変更する必要があります。
これをスクリプトの先頭に追加します。
ini_set("xdebug.var_display_max_children", -1);
ini_set("xdebug.var_display_max_data", -1);
ini_set("xdebug.var_display_max_depth", -1);
ドキュメント から:
xdebug.var_display_max_children
タイプ:整数、デフォルト値:128
Xdebug_var_dump()、xdebug.show_local_vars、または関数トレースを使用して変数が表示されるときに、配列の子の量とオブジェクトのプロパティが表示されます。
制限を無効にするには、値として-1を使用します。
この設定は、リモートデバッグ機能を介してクライアントに送信される子の数には影響しません。
xdebug.var_display_max_data
タイプ:整数、デフォルト値:512
Xdebug_var_dump()、xdebug.show_local_vars、または関数トレースを使用して変数が表示されるときに表示される最大文字列長を制御します。
制限を無効にするには、値として-1を使用します。
この設定は、リモートデバッグ機能を介してクライアントに送信される子の数には影響しません。
xdebug.var_display_max_depth
タイプ:整数、デフォルト値:3
Xdebug_var_dump()、xdebug.show_local_vars、または関数トレースを使用して変数を表示するときに、配列要素とオブジェクトプロパティのネストレベルの数を制御します。
選択できる最大値は1023です。値として-1を使用して、この最大数を選択することもできます。
この設定は、リモートデバッグ機能を介してクライアントに送信される子の数には影響しません。
場合によっては、長い文字列を操作するときにvar_dump
を使用するのが非常に面倒になることがあります。結果をブラウザに出力する代わりに、ターミナルを使用できます。別の解決策は、file_put_contents
などを使用してテキストファイルに結果を出力することです。次に、ファイルを開いて結果を確認します。