与SimpleXML相似,您可以使用DOMDocument从字符串或XML文件中解析XML。
1.从字符串
$doc = new DOMDocument(); $doc->loadXML($string);
2.从文件
$doc = new DOMDocument(); $doc->load('books.xml');//使用实际的文件路径。绝对或相对
解析示例
考虑以下XML:
<?xml version="1.0" encoding="UTF-8"?> <books> <book> <name>PHP - An Introduction</name> <price>$5.95</price> <id>1</id> </book> <book> <name>PHP - Advanced</name> <price>$25.00</price> <id>2</id> </book> </books>
这是解析它的示例代码
$books = $doc->getElementsByTagName('book'); foreach ($books as $book) { $title = $book->getElementsByTagName('name')->item(0)->nodeValue; $price = $book->getElementsByTagName('price')->item(0)->nodeValue; $id = $book->getElementsByTagName('id')->item(0)->nodeValue; print_r ("The title of the book $id is $title and it costs $price." . "\n"); }
这将输出:
第1本书的标题是PHP-An Introduction,价格为$5.95。
第2本书的标题是PHP-Advanced,价格为$25.00。