とあるxmlデータを加工する。
xmlデータは、htmlのタグを用いて書かれたテーブルである。widthなどの属性をタグに付加する。
--------------------------------------------------------------------------------
1.最終目標html [→見る]
あか | りんご いちご ピクミン |
---|---|
きいろ | バナナ レモン ゴールデンキウイ ピクミン |
みどり | きゅうり きゃべつ キウイ |
むらさき | ナス ピクミン |
2.XML
xmltest.xml
あか | りんご いちご ピクミン |
---|---|
きいろ | バナナ レモン ゴールデンキウイ ピクミン |
きゅうり きゃべつ キウイ | |
むらさき | ナス ピクミン |
(注:見やすいようにインデントしていますが、実際はインデントも改行もしていません。XMLでは空白や改行もノードとみなす。ここでは処理を単純化するためそれらはファイルに含まれていないものとします。)
↑「XMLでは空白や改行もノードとみなす。」のですが、読みこむときに
$doc = domxml_open_file("xmltest31.xml",
DOMXML_LOAD_DONT_KEEP_BLANKS);
と指定すれば、余分な空白、改行は削除してくれました。他にも DOMXML_LOAD_PARSING
とか、いろいろ指定できるようです。
--------------------------------------------------------------------------------
3.とりあえず読みこんでみる
(1)スクリプト
require_once("XML/Parser.php");
echo "";
echo '';
echo "";
sub_func();
echo "";
echo "";
function sub_func(){
//XMLファイル読みこみ
$doc = domxml_open_file("xmltest.xml");
//ルートノード取得
$root = $doc->root();
//ルートノードの名称表示
echo "root : " . $root->node_name();
}
>
(2)ブラウザからの実行結果
root : table
無事ルートノード
あか | りんご いちご ピクミン |
---|---|
きいろ | バナナ レモン ゴールデンキウイ ピクミン |
みどり | きゅうり きゃべつ キウイ |
むらさき | ナス ピクミン |
無事、赤字の属性が追加されている。
--------------------------------------------------------------------------------
5.th,tdに属性追加
(続く)
MT42BlogBetaInner