<?xml version="1.0" encoding="gb2312"?>
<books>
<book id="1">
<author>Jack Chen</author>
<title>PHP Hacks</title>
<publisher>O'Reilly</publisher>
</book>
<book id="2">
<author>Jack Herrington</author>
<title>Podcasting Hacks</title>
<publisher>O'Reilly</publisher>
</book>
</books>
我有这样的一个XML文件
我用的是PHP DOMDocument解析
现在我想知道怎么通过book 中的id值来列出这一节点下的所有值?
也就是说,我现在想显示出
id=1的book内
author,title,publisher所有信息?
<books>
<book id="1">
<author>Jack Chen</author>
<title>PHP Hacks</title>
<publisher>O'Reilly</publisher>
</book>
<book id="2">
<author>Jack Herrington</author>
<title>Podcasting Hacks</title>
<publisher>O'Reilly</publisher>
</book>
</books>
我有这样的一个XML文件
我用的是PHP DOMDocument解析
现在我想知道怎么通过book 中的id值来列出这一节点下的所有值?
也就是说,我现在想显示出
id=1的book内
author,title,publisher所有信息?
$doc = new DOMDocument();
$doc->load( 'books.xml' );
$book = $doc->getElementsById( "1" );
$authors = $book->getElementsByTagName( "author" );
$author = $authors->item(0)->nodeValue;
$publishers = $book->getElementsByTagName( "publisher" );
$publisher = $publishers->item(0)->nodeValue;
$titles = $book->getElementsByTagName( "title" );
$title = $titles->item(0)->nodeValue;
echo "$title - $author - $publisher\n";
?>
<?xml version="1.0" encoding="gb2312"?>
<books>
<book par="a">
<author>Jack Chen</author>
<title>PHP Hacks</title>
<publisher>O'Reilly</publisher>
</book>
<book par="b">
<author>Jack Herrington</author>
<title>Podcasting Hacks</title>
<publisher>O'Reilly</publisher>
</book>
</books>那我要是把属性名换成别的呢?
把id换成par的话,也是用getElementsById()吗
是另一个类吗?一般的PHP版本是否都兼容这个东西?还有,能功烦你给个示demo吗?
$query = 'count(row/entry[. = "en"])';$entries = $xpath->evaluate($query, $tbody);
echo "There are $entries english books\n";
的回答真的很详细,正是我需要的,不过不好意思结贴的时候没有看到你回答,我要另开贴送你分。请接收