var_dumpの出力を変数に渡す
var_dumpは便利。
だけど何か加工を挟んでから表示したかったり、ログに出したりする場合、出力が常に画面に出てしまうという仕様が邪魔になる。
実はこれはなんとかなるようだ。
コード:
<?php $hoge = array( "aaa" => 1, "bbb" => 12, "ccc" => 123, ); function vdump($obj){ ob_start(); var_dump($obj); $dump = ob_get_contents(); ob_end_clean(); return $dump; } $hoge_dump = vdump($hoge); $hoge_dump = preg_replace('/ /', ' ', $hoge_dump); $hoge_dump = preg_replace('/\n/', '<br />', $hoge_dump); print $hoge_dump; ?>
出力結果:
array(3) { ["aaa"]=> int(1) ["bbb"]=> int(12) ["ccc"]=> int(123) }