SimpleXMLのは、私たちは簡単にXMLデータを操作して取得することができますPHPの拡張機能です。
PHPのSimpleXMLは - ノード値を取得します。
「からノード値を取得しますnote.xml 」ファイル:
例
<?php
$xml=simplexml_load_file("note.xml") or die("Error: Cannot
create object");
echo $xml->to . "<br>";
echo $xml->from . "<br>";
echo $xml->heading . "<br>";
echo
$xml->body;
?>
»実行例 上記のコードの出力は次のようになります。
Tove
Jani
Reminder
Don't forget me this weekend!
別のXMLファイル
私たちは「と呼ばれるXMLファイルがあるとしBooks.xmlを次のようになります」、:
<?xml version="1.0" encoding="utf-8"?>
<bookstore>
<book
category="COOKING">
<title lang="en">Everyday
Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry
Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en-us">XQuery
Kick Start</title>
<author>James McGovern</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="WEB">
<title lang="en-us">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
PHPのSimpleXML - 特定の要素のノード値を取得します。
次の例では、ノードの値を取得<title>第一及び第二の要素<book>の要素"books.xml"ファイル:
例
<?php
$xml=simplexml_load_file("books.xml") or die("Error: Cannot create
object");
echo $xml->book[0]->title . "<br>";
echo
$xml->book[1]->title;
?>
»実行例 上記のコードの出力は次のようになります。
Everyday Italian
Harry Potter
PHPのSimpleXML - ノード値を取得します - ループ
次の例では、すべてをループ<book>の要素"books.xml"ファイル、および<タイトル>、<作者>、<年>、とのノード値取得<price>要素を:
例
<?php
$xml=simplexml_load_file("books.xml") or die("Error: Cannot create
object");
foreach($xml->children() as $books) {
echo $books->title . ", ";
echo $books->author . ",
";
echo $books->year . ", ";
echo $books->price . "<br>";
}
?>
»実行例 上記のコードの出力は次のようになります。
Everyday Italian, Giada De Laurentiis, 2005, 30.00
Harry Potter, J K.
Rowling, 2005, 29.99
XQuery Kick Start, James McGovern, 2003, 49.99
Learning XML, Erik T. Ray, 2003, 39.95
PHPのSimpleXML - 属性値を取得
次の例では、属性値取得"category"最初の属性<book>要素との属性値"lang"の属性<title>第二の要素<book>要素:
例
<?php
$xml=simplexml_load_file("books.xml") or die("Error: Cannot create
object");
echo $xml->book[0]['category'] . "<br>";
echo
$xml->book[1]->title['lang'];
?>
»実行例 上記のコードの出力は次のようになります。
COOKING
en
PHPのSimpleXML - 属性値を取得します - ループ
次の例では、の属性値を取得<title>の要素"books.xml"ファイルを:
例
<?php
$xml=simplexml_load_file("books.xml") or die("Error: Cannot create
object");
foreach($xml->children() as $books) {
echo $books->title['lang'];
echo "<br>";
}
?>
»実行例 上記のコードの出力は次のようになります。
en
en
en-us
en-us
より多くのPHPのSimpleXML
PHPのSimpleXML関数の詳細については、私たちの訪問PHPのSimpleXMLリファレンス。