var_dumpの結果を見やすく整形する[Pear::Var_Dump]

PearにVar_Dumpと呼ばれる変数やオブジェクトを整形して出力するパッケージがあります。

使い方は、非常に簡単でTextやTable、HTML4のText、Table、XHTMLのText、Table、XMLで 出力してくれます。デフォルトは、XHTMLのTextです。

<?php
require_once "php/Var_Dump.php";
require_once 'Services/AmazonECS4.php';

$objAmazon = new Services_AmazonECS4('【Subscription ID】', '【Associate ID】');

$objAmazon->setLocale('JP');
$options = array();
$options['ResponseGroup'] = 'Medium,Tracks';

$result = $objAmazon->ItemLookup('B000002BMV', $options);

Var_Dump::display($result);
?>

結果は、次のようなイメージで出力されます。XHTML_Text

このクラスは、いろいろな関数でオブジェクトをインスタンス化してくれるようです。

次に出力フォーマットを指定する方法です。これは、オプションとして'display_mode'を指定します。 指定できるフォーマットは、次のものです。

  • Text
  • Table
  • HTML4_Text
  • HTML4_Table
  • XHTML_Text
  • XHTML_Table
  • XML
<?php
require_once "php/Var_Dump.php";
require_once 'Services/AmazonECS4.php';

$objAmazon = new Services_AmazonECS4('【Subscription ID】', '【Associate ID】');

$objAmazon->setLocale('JP');
$options = array();
$options['ResponseGroup'] = 'Medium,Tracks';

$result = $objAmazon->ItemLookup('B000002BMV', $options);

Var_Dump::displayInit(array('display_mode' => 'HTML4_Table'));
Var_Dump::display($result);
?>

この他にも様々な使い方ができます。

<?php
require_once "php/Var_Dump.php";

$objDump = Var_Dump::displayInit(array('display_mode' => 'HTML4_Table'));
echo $objDump->toString($result);
echo $objDump->toString($object);
?>
<?php
require_once "php/Var_Dump.php";

$objDump = Var_Dump::factory(array('display_mode' => 'HTML4_Table'));
echo $objDump->toString($result);
echo $objDump->toString($object);
?>
<?php
require_once "php/Var_Dump.php";

$objDump = new Var_Dump(array('display_mode' => 'HTML4_Table'));
echo $objDump->toString($result);
echo $objDump->toString($object);
?>