PHP の print_r() の出力を整形し見やすくする

変数の中身を確認するログの出力で、print_r() が少し見づらいので、少し整形する関数を書いた。

PHP で変数の中身を確認する時に print_r()var_dump()var_export() が使える。問題点として、var_dump() は内容が長いと途中でカットされてしまう。var_export() は PHP コードとして出力され、オブジェクトの表記などが若干 print_r() と異なる。var_export() でも print_r() でもさしあたりどちらでもよかったので、今回は、ArrayObject などレジェックスでマッチさせやすい print_r() の出力を整形することにした。

仮に、次のコードの $a を表示させようとする。

通常の print_r() の表記

コード

結果

余分な改行やラインブレイクがあるのがわかる。これを取り除いてコンパクトに収めることで、小さなサイズの変数の確認だけで、ログが縦長になってスクロールしなくてはならない状況を避けたい。

print_r() 整形用カスタム関数

次のカスタム関数で出力すると、以下のようになる。

使い方

結果

カスタム関数のコード

Leave a Reply

Your email address will not be published. Required fields are marked *