HOME>WEBプログラム覚書>PHP5 simpleXML 動作確認 part2

PHP5 simpleXML 動作確認 part2

simpleXMLを利用するとXMLファイルの作成などが簡単に できてしまうっぽいので試します。

XMLデータの取得

PHP5 simpleXML 動作確認 pert1と同じく使うXMLファイルはこのサイトの サイトマップ

まずは書き込むXMLデータの取得。/directories/root/web/web_design を 取得することにする。

サンプルコード

PHP

  1. <?php
  2. $xml = "/sample/xml/sitemap/sitemap.xml";
  3. $sitemap = new SimpleXMLElement($xml, null, true);
  4.  
  5. $web_design = $sitemap->root->web->web_design;
  6. ?>

文字列データを取得

文字列として取得するにはasXML()を利用する

サンプルコード

PHP

  1. <?php
  2. echo htmlspecialchars($web_design->asXML(), ENT_QUOTES, mb_internal_encoding());
  3. ?>

実行結果

XML

  1. <web_design name="WEBデザイン" d="WEBデザインに必要な知識、テクニック、スクリプトなどの紹介">
  2.  
  3.                         <files>
  4.                              <index.php name="一覧" k="WEB,デザイン,WEBデザイン" d="WEBデザインに必要な知識、テクニック、スクリプトなどの紹介"/>
  5.                         </files>
  6.  
  7.                         <html name="HTML" d="HTMLについての解説・タグのリファレンス">
  8.                                 <files>
  9.                                     <index.php name="HTML" k="HTML,HTMLタグ,タグ,リファレンス" d="HTMLについての解説・タグのリファレンス"/>
  10.                                 </files>
  11.                         </html>
  12.  
  13.             <css_hack name="CSS Hack" d="クロスブラウザを実現させるCSSハックの紹介">
  14.                 <files>
  15.                         <index.php name="CSS Hack" k="CSS,CSS Hack,CSSハック" d="クロスブラウザを実現させるCSSハックの紹介"/>
  16.                                         <under_score.php name="アンダースコアハック" k="アンダースコアハック,css,ハック" d="CSSハック アンダースコアハックの説明-WinIE4.0~6.0-"/>
  17.                                         <star_hack.php name="スターハック" k="スターハック,css,ハック" d="CSSハック スターハックの説明-WinIE4.0~6.0MacIE4.0~5.2-"/>
  18.                                         <star7_hack.php name="スター7ハック" k="スター7ハック,css,ハック" d="CSSハック "/>
  19.                                         <back_slash.php name="Hollyハック(バックスラッシュハック)" k="Hollyハック(バックスラッシュハック),css,ハック" d="CSSハック "/>
  20.                                         <caio_hack.php name="Caioハック" k="Caioハック,css,ハック" d="CSSハック Caioハックの説明-NN-"/>
  21.                                         <hash_hack.php name="ハッシュハック" k="ハッシュハック,css,ハック" d="ハッシュハックの説明-WinIE4~6/MacIE5.0~5.2/Opera7/Mozilla/Firefox-"/>
  22.                                         <fbrice.php name="CSSハック -Fbriceインバージョン-" k="Fbriceインバージョン,css,ハック" d="CSSハック Fbriceインバージョンの説明-NN4/Opera4~5-"/>
  23.                                         <root.php name=":root擬似クラス" k=":root擬似クラス,css,ハック" d="CSSハック :root擬似クラスの説明-MacIE5.0~5.2/Mozilla/FireFox/Safari-"/>
  24.                                         <xmlns.php name="xmlns属性" k="xmlns属性,css,ハック" d="CSSハック xmlns属性の説明-MacIE5.0~5.2/Mozilla/FireFox/Safari-"/>
  25.                                 </files>
  26.             </css_hack>
  27.  
  28.                         <tec name="WEBデザインのネタ" d="WEBデザインに役立つテクニックやネタなどを紹介">
  29.                 <files>
  30.                 <index.php name="一覧" k="WEB,WEBデザイン,WEBデザイナー,HTML,CSS,テクニック" d="WEBデザインに役立つテクニックやネタなどを紹介"/>
  31.                                 <_0.php name="table + css で見栄えのいいきれいなtableを作成" k="WEB,WEBデザイン,HTML,css,テーブル,table" d="table + css で見栄えのいいきれいなtableのサンプル"/>
  32.                                 <_1.php name="CSSでmin-height、min-widthをクロスブラウザにする最も簡単な方法" k="CSS,min-height,min-width,高さ" d="CSSでmin-height、min-widthをクロスブラウザにする最も簡単な方法の紹介"/>
  33.                 <_2.php name="selectメニューのデザイン" k="form,input,select,optgroup,css" d="selectメニューのデザインいろいろ"/>
  34.                                 </files>
  35.                         </tec>
  36.             <bookmark name="お気に入りデザインサイトブックマーク" k="WEB,WEBデザイン,HTML,Flash,クールデザイン" d="お気に入りのデザインに優れたサイトをブックマーク"/>
  37.                 </web_design>

ファイルに出力

ファイルに出力するにはasXML(filename)を利用する

サンプルコード

PHP

  1. <?php
  2. $web_design->asXML(dirname($xml) . DIRECTORY_SEPARATOR . "web_design.xml");
  3. ?>

出来上がったファイルはこちら 確かに簡単にできますねー。

投稿日 2008年12月17日 00:37
カテゴリ PHP
タグ テストコード | 動作確認 | 関数
トラックバック URL http://www.kantenna.com/cgi-bin/mt504/mt-tb.cgi/1155

コメント

コメントする
Name
Email Address
URL