根据id显示一个XML条目

时间:2010-10-20 03:55:11

标签: php xml domdocument domxpath

尝试制作一个快速而肮脏的新闻系统。

拥有一个基本的XML文件。

<?xml version="1.0" encoding="ISO-8859-1"?>
<articles>
  <article id="1">
    <title>Article title 001</title>
    <short>Short text</short>
 <long>Long text</long>
  </article>
  <article id="2">
    <title>Article title 002</title>
    <short>Short text</short>
 <long>Long text</long>
  </article>
</articles>

我可以使用以下代码显示所有文章:

<?php

 $xmldoc = new DOMDocument();
 $xmldoc->load('test.xml');

 $xpathvar = new Domxpath($xmldoc);

 $queryResult = $xpathvar->query('//articles/article'); // works fine grabs all articles
 foreach($queryResult as $result){
   echo $result->textContent;
 }
?>

我无法弄清楚如何根据ID展示一篇文章。

任何帮助都会很棒。

由于 斯蒂芬

1 个答案:

答案 0 :(得分:1)

$id = 1;
$queryResult = $xpathvar->query(sprintf('//articles/article[@id="%s"]', $id));