simplexml_load_file, simplexml_load(とりあえず簡単に読み込む)
http://fdays.blogspot.jp/2009/02/simplexml.html
サンプルXML
<?xml version="1.0" encoding="UTF-8" ?> <root> <parent> <child>aaa</child> <child>bbb</child> <child>ccc</child> <count>3</count> </parent> <hy-phen>hyphen</hy-phen> </root>
読み込み
<?php
$xmlstr = file_get_contents("test2.xml");
echo $xmlstr;
$xml = new SimpleXMLElement($xmlstr);
var_dump($xml);
$xml = simplexml_load_file("test2.xml");
var_dump($xml);
?>
子要素の取り出し
var_dump($xml->parent->count);
繰り返し要素を指定すると、先頭を取り出す
var_dump($xml->parent->child);
インデックスを指定して繰り返し要素を取り出す
var_dump($xml->parent->child[2]);
繰り返し要素にはforeachを使うことができる
foreach ($xml->parent->child as $c) {
var_dump($c);
}
子要素全てを取り出す
foreach ($xml->parent->children() as $c) {
var_dump($c);
}
XMLの要素名がPHPの予約後、変数の場合は{ } で囲む
var_dump($xml->{'hy-phen'});
DOM
読み込み
<?php
$dom = new DOMDocument('1.0', 'UTF-8');
$dom->load("test.xml");
printNode($dom);
function printNode(DOMNode $node) {
$child = $node->firstChild;
while ($child != NULL) {
// nodeValueの仕様がW3C の仕様とは異なる。
if ($child->nodeType == XML_TEXT_NODE) {
print($child->nodeName . " Text = " . $child->nodeValue. "\n");
} else {
print($child->nodeName."\n");
}
// print($child->nodeName)."\n";
printNode($child);
$child = $child->nextSibling;
}
}
?>
[カテゴリ: プログラミング言語 > Java]
[通知用URL]
Tweet
最終更新時間:2015年12月12日 23時07分47秒