【PHP】$_POST,$_GET,$_SESSIONのすべての値をvar_dumpで改行して表示する方法
目次
デバッグ情報を改行したい
PHPで$_POST['$key']
など変数に格納されているすべて値を表示したいときにecho var_dump($_POST)
とすることがありますが、一列でダラダラをデバッグ表示されるので、沢山あると正直見にくいです。
そこで、<pre></pre>
で囲むと改行して表示されるというこが分かりましたのでメモ。
var_dumpのサンプル
<?php //<!-- ↓↓デバッグ↓↓ --> echo "<h5>var_dump(\$_POST)</h5>"; if(isset($_POST)) { echo '<pre>'; echo var_dump($_POST); echo '</pre>'; } echo "<h5>var_dump(\$_GET)</h5>"; if(isset($_GET)) { echo '<pre>'; echo var_dump($_GET); echo '</pre>'; } echo "<h5>var_dump(\$_SESSION)</h5>"; if(isset($_SESSION)) { echo '<pre>'; echo var_dump($_SESSION); echo '</pre>'; } //<!-- ↑↑デバッグ↑↑ --> ?>
なぜか、一行でecho '<pre>'.var_dump($_GET).'</pre>';
とすると改行になりませんでしたので、上記のように<pre>
と</pre>
は行を分けて別に書かなければなりません。
print_rのサンプル
print_r
でも同様の表示ができます。
<?php //<!-- ↓↓デバッグ↓↓ --> echo "<h5>print_r(\$_POST)</h5>"; if(isset($_POST)) { echo '<pre>'; echo print_r($_POST); echo '</pre>'; } echo "<h5>print_r(\$_GET)</h5>"; if(isset($_GET)) { echo '<pre>'; echo print_r($_GET); echo '</pre>'; } echo "<h5>print_r(\$_SESSION)</h5>"; if(isset($_SESSION)) { echo '<pre>'; echo print_r($_SESSION); echo '</pre>'; } //<!-- ↑↑デバッグ↑↑ --> ?>