通过使用PHP循环通过XML
问题描述:
我想通过使用PHP循环这个XML文件,以便我可以从2005年仅显示书籍!通过使用PHP循环通过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">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="web" cover="paperback">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
我正在使用simplexml_load_string。在PHP中将代码转换为字符串。
我将如何使用PHP从2005年查找书籍?
答
这是什么?
$bookstore = new SimpleXMLElement($xml);
foreach($bookstore as $book){
if($book->year == 2005){
//do something
}
}
+0
谢谢我现在就试试你的代码。 – DonnyV
答
由于您使用SimpleXML,你应该看看SimpleXMLElement::xpath
搜索通过w3schools.com XPath Tutorial,在这个例子似乎是从,你还会发现在XPath Syntax
/bookstore/book[year='2005']
为例你的问题是? –
请将您到目前为止的代码添加到问题中。我们不能没有。 – arkascha