japan.internet.comThe Internet & IT Network
RSS
  • ニュース
  • コラム
  • リサーチ
  • ヘッドライン
  • 特集
  • ブログ
  • プレスリリース
  • 専門チャンネル
  • イベント
  • ランキング
  • ニュースメール
2008年9月9日
文字サイズ文字サイズ小文字サイズ中文字サイズ大
WebTutorial2002年11月18日 00:00

XML と PHP -- 3 PHP と WDDX(その2)

海外海外internet.com発の記事
  • このエントリーを含むはてなブックマーク
  • この記事をクリップ!
  • Buzzurlにブックマーク
  • Yahoo!ブックマークに登録
  • newsing it!
  • この記事をokyuuへインポート

PHP と WDDX(その2)

September 4, 2002

wddx_serialize_value() には2番目のオプションパラメータがあり、 人間が読むことができるコメントを出力結果のパケットに追加できる。 リスト 5.7 は、この実例である先程のリスト 5.5 の変形で、 その出力結果とともにリスト 5.8 に表示した。


ソースをたどる

この節の例をブラウザに表示させている場合、 画面上の出力がここで表示した出力と一致しないのか不思議に思うかもしれない。 それは、Web ブラウザは知らないタグは隠す癖があるからで、 シリアライズプロセスで生成された WDDX タグは、 レンダリングされた Web ページには表示されない。

解決方法はいたって簡単である。 ブラウザの「表示−ソース」コマンドを使って Web ページのもとのソースを表示すると、 ブラウザが跳ね除けた出力をすべて見ることができる。


リスト 5.7 WDDX パケットにコメントを追加する

<?php
$flavors = array("strawberry", "chocolate", "raspberry", "peach");

print wddx_serialize_value($flavors, "A WDDX representation of my favorite
	icecream flavors");
?>

リスト 5.8 ヘッダ部分に人間が読み取れるコメントが追加された WDDX パケット

<wddxPacket version='1.0'>
   <header>
      <comment>
	     A WDDX representation of my favorite icecream flavors
      </comment>
   </header>
    <data>
      <array length='4'>
         <string>strawberry</string>
         <string>chocolate</string>
         <string>raspberry</string>
         <string>peach</string>
      </array>
   </data>
</wddxPacket>

wddx_serialize_vars() 機能

wddx_serialize_value() 機能は、変数をひとつしかうけいれられないが、 wddx_serialize_vars() 機能を使えば、 同時に複数の変数をシリアライズできる。 これは引数として、シリアライズに複数の変数を受け入れることができる。 リスト 5.9 はどのように働くかを示している。

リスト 5.9 wddx_serialize_vars() を使って複数の値をシリアライズする

<?php
$phrase = "The game's afoot";
$animals = array("parrot" => "Polly", "hippo" => "Hal", "dog" => "Rover",
"squirrel" => "Sparky");

print wddx_serialize_vars("phrase", "animals");
?>

wddx_serialize_vars() では、 ストリングの引数としてシリアライズする変数に名前をつける必要がある。

リスト 5.10 は wddx_serialize_vars() を実行した結果を表示している。

リスト 5.10 wddx_serialize_vars() で生成された WDDX パケット

<wddxPacket version='1.0'>
<header/>
   <data>
      <struct>
         <var name='phrase'>
            <string>The game's afoot</string>
         </var>
         <var name='animals'>
            <struct>
               <var name='parrot'>
                  <string>Polly</string>
               </var>
               <var name='hippo'>
                  <string>Hal</string>
               </var>
               <var name='dog'>
                  <string>Rover</string>
               </var>
               <var name='squirrel'>
                  <string>Sparky</string>
               </var>
            </struct>
         </var>
      </struct>
   </data>
</wddxPacket>

PHP と WDDX(その1)
XML と PHP
PHP と WDDX(その3)


関連テーマ
このエントリーを含むはてなブックマーク この記事をクリップ!
BuzzurlにブックマークBuzzurlにブックマーク Yahoo!ブックマークに登録
この記事をokyuuへインポート
最新トップニュース
ベンチャー専門家の目利きブログ「なぜこの企業は伸びるのか?」
【ベンチャー専門家の目利きブログ「なぜこの企業は伸びるのか?」】
「時代とメディアの変化に素早く対応したサービスを提供し続ける!!」/ユニバース株式会社(11月21日)
データメーション
【データメーション】
Yahoo を応援する(11月20日)
Graphic Design Forum
【Graphic Design Forum】
もう決めたの? (11月17日)
エンジニアの独り言
【エンジニアの独り言】
不景気だからこそ(11月14日)
海外のインターネットコムアメリカ韓国ドイツトルコ
Copyright 2008 Jupitermedia Corporation All Rights Reserved.http://www.internet.com/