WebサービスのAPIやRSSを使ってPHPで何か作るときは、simplexml_load_file()やfile_get_contents()などの関数、XML_Unserializer(ライブラリ)を用いて、APIレスポンスが返したXMLのオブジェクトや配列から、出力のための処理を行うわけですが・・・
それらの返されたXMLの構造を視認性よく確認するために、開発時には、var_dump()関数を用いたデバッグ用のコードを、必要な箇所に埋め込んでおくと便利です。
PHPのvar_dump()関数は、引数で渡した変数の構造を見やすく整形して返してくれます。
以下のように、XMLレスポンスを確認したい箇所に、デバッグ用のコードを埋め込む。
echo '<pre>'; var_dump($xml_res); echo '</pre>'; exit(); // デバッグ用。公開時コメントアウト
var_dump()を使うときは、htmlのpreタグで囲んでやんないと、改行が反映されなくてめちゃ見難い。
アフィリエイトは儲かんないってば:PEARライブラリ「Var_Dump」で、配列をヴィジュアル的に理解する - livedoor Blog(ブログ)var_dump関数で、実際に表示したものがこちらです。
構造はわからない事は無いですが(今まではこれで見ていましたがw)、読みづらいですよね。なんと言うか、詰め込みすぎな感じです。
PEARライブラリに、「Var_Dump」というクラスがあるらしく、これを使っても良さそうですけど、preタグで囲んでやるほうがお手軽簡単だと思います。
exit();は、スクリプトの実行を、そこで中止するために書いてますけど、レスポンス情報の構造確認と出力表示の整形確認を同時に行いたい場合は、exit();を省いてやっても良い。
そして、本格オープンしたら・・・
//echo '<pre>'; var_dump($xml_res); echo '</pre>'; exit(); // デバッグ用。公開時コメントアウト
と、行頭にスラッシュ2本「//」をつけてコメントアウトして、デバッグコードの実行を無効にします。
preタグと言えば・・・
preタグメーカーという、プログラムソースを綺麗に表示するためのツールを公開しています。
MTをお使いでpreタグで、綺麗にソースを表示させたい場合は・・・
1.preタグ内で、2回改行して空の行を作らない。
2.<pre>タグのすぐ上に、1行だけ空の行を作る。(2行以上、空けてはいけない。)
のルールを守れば、綺麗にソースを表示できます。
ひろっちさんのブログで、preタグメーカーをご紹介いただきました。
PSPプログラムFAN: preタグ・メーカー
ありがとうございます、ひろっちさん。
C言語は学習中なのですが、難しいです・・・orz
■この一覧は、次のエントリーを参照しています: PHPでvar_dump()を使ったお手軽デバッグコード:
» PHP:var_dump だって見やすくなりたい(デバッグ用 var_dump)
デバッグ用ライブラリを使うまでもない場合のより見やすい var_dump
■この記事のトラックバックURL:
http://www.mapee.jp/mpe334/mt-tb.cgi/267