$books = new DOMDocument();
$books->load( 'books.xml' );
$id = $_GET['id'];
$xml = '<?xml version="1.0" encoding="UTF-8"?>';
$xml .= '<results><course>'.$id.'</course>';
$xml .= '<books>';
$items = $books->getElementsByTagName("item");
foreach( $items as $item )
{
$item_id = $item->getAttribute("id");
if($id == $item_id){
....
}
}
$xml .= '</books></results>';
header ("Content-Type:text/xml");
echo ($xml);
我上面的代码会返回给我:
<results>
<course>1111</course>
<books>
<isbn id="0134582667" common="10" before="4" same="1" after="5" total="248"/>
.....
</books>
</results>
此页面包含以下错误:
第12行第772行的错误:只允许在 文档的开头下面是第一个页面的渲染 错误。
答案 0 :(得分:0)
你可以把你的物品放到一个数组中,然后对数组进行排序,就像这样......
的books.xml
<?xml version="1.0"?>
<results>
<course>1111</course>
<books>
<isbn id="0134582667" common="10" before="4" same="1" after="5" total="248">248</isbn>
<isbn id="0134582667" common="10" before="4" same="1" after="5" total="3">3</isbn>
<isbn id="0134582667" common="10" before="4" same="1" after="5" total="224">224</isbn>
<isbn id="0134582667" common="10" before="4" same="1" after="5" total="25">25</isbn>
</books>
</results>
test.php的
$books = new DOMDocument();
$books->load( 'books.xml' );
$items = $books->getElementsByTagName("isbn");
$nodeArray = array();
foreach ($items as $item) {
$nodeArray[$item->getAttribute('total')] = $item;
}
ksort($nodeArray);
echo "<pre>". print_r($nodeArray, true) ."</pre>";