-1

配列を作成するたびにprint_r、表示スタイルを正しく取得できないことに気付きました。つまり、ブラウザーのクライアント ビューに 1 行で表示されるということです。読みやすい形式で表示するのに役立つツール、方法、または方法はありますか?

4

7 に答える 7

3

試す

echo'<pre>';
print_r();
echo'</pre>';

適切にフォーマットされた出力が得られます

于 2012-09-12T04:28:09.613 に答える
2

適切に管理された方法で配列を出力するには、htmlタグ<pre>が便利です。

<pre>
<?php print_r() ?>
</pre>
于 2012-09-12T04:47:29.500 に答える
1

print_r の出力の前後に pre タグを挿入する pr というラッパー関数を作成するのが好きです。

すなわち

function pr($variable) {
    echo '<pre>';
    print_r($variable);
    echo '</pre>';
}
于 2012-09-12T04:30:57.180 に答える
0

これは、ブラウザーがテキストをレンダリングするときに空白を単一のスペースに削除するためですが、他の提案のような 3 行は必要ありません。

echo '<pre>', print_r($var, true), '<pre>';
于 2012-09-12T04:38:47.330 に答える
0
echo'<pre>';
print_r();
echo'</pre>';

または、他に出力するものがなければ:

header("Content-Type: text/plain");
print_r();
于 2012-09-12T04:30:30.053 に答える
0

私が使う:

function view($object) {
   $object = print_r($object, true);
   $lines = explode("\n", $object);

   echo '<pre class="prettyprint linenums"><ol class="linenums">';
       foreach ($lines as $line ) {
           $output = preg_replace('"\[([^;]*)\]"', '<span class="assoc">$0</span>', $line);
           $output = preg_replace('"\=\>"', '<span class="tag">$0</span>', $output);
           echo "<li><span>$output</span></li>";
       }
   echo'</ul></pre>';
}

次に、少しスタイルを設定します...これは私のCSSです:

.tag { color: #aaaaaa; }
.assoc { color: teal; }

.prettyprint {
padding: 8px;
background-color: #f7f7f9;
border: 1px solid #e1e1e8;
}
.prettyprint.linenums {
-webkit-box-shadow: inset 60px 0 0 #fbfbfc, inset 61px 0 0 #ececf0;
-moz-box-shadow: inset 60px 0 0 #fbfbfc, inset 61px 0 0 #ececf0;
box-shadow: inset 60px 0 0 #fbfbfc, inset 61px 0 0 #ececf0;
}

ol.linenums {
margin: 0 0 0 53px;
color: #aaaaaa;
}

ol.linenums li > span {
padding-left: 12px;
color: #666666;
text-shadow: 1px 1px 1px white;
line-height: 20px;
text-shadow: 0 1px 0 #fff;
}
于 2013-03-29T00:21:45.327 に答える