- blogs:
- cles::blog

var_dump()を使う前に

PHPのプログラミングでプリントデバッグを行う場合には組み込み関数であるvar_dump()とか、print_r()をまず使うわけなんですが、それなりの要素数を持った配列とか、オブジェクトになってくると、値を探すのが困難になってきます。
そういう場合にはvar_dump()ではなくデバッグ補助のライブラリを使ったほうが幸せになれます。デバッグ補助のライブラリは変数の情報をグラフィカルに*1表示してくれるからです。
ちょっとしたスクリプトくらいであればこのようなツールの出番はないのかも知れませんが、入れ子になっているような、大きな配列やオブジェクトを扱うような場合には、効果を発揮します。僕もNucleusのプラグインを開発する際などに活用しています。
この手のライブラリとして代表的なのはこの2つでしょうか。
† debuglib.php
Tulpes PHP4 Debug Helper (debuglib.php)
The purpose of these functions is to display PHP arrays (e.g GET, POST etc.) as colorful HTML tables.
おそらく最もメジャー所はこのdebuglib.phpではないかとおもいます。特にshow_vars()は強力で、スクリプト中のすべての変数を一覧として出力することができます。
† dBug.php
dBug
It's a class that displays structured information about a variable in a colored tabular format. Simply put, it's PHP's var_dump function on steroids.
こちらはdebuglibよりも新めのライブラリで、Mapleなんかにも採用されています。
dBugの実行例みてもらえると分かりますが、単にvar_dump()を綺麗に見せるだけというだけというわけではなく、データベースやXMLなどのリソースについてもグラフィカルに表示することができます。さらにJavaScriptによる要素の折りたたみも可能です。
- *1: テキストではなくHTMLとして。
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/1512
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
2 . Word で数式がグレーアウトされていて挿入できないときは(6696)
3 . Windows 10 で勝手にログアウトされないようにする(5150)
4 . Firefox でパスワードが保存されるページとされないページの違い(3888)
5 . awk で指定した n カラム目以降を出力する(3476)