PHP在XML中查找最后一个值

时间:2013-06-18 18:16:09

标签: php xml simplexml

我有以下XML文件,我无法弄清楚如何让PHP打开此文件,并知道最后一个ID是3。

<League>
  <Id>1</Id>
  <Name>English Premier League</Name>
</League>
<League>
  <Id>2</Id>
  <Name>English League Championship</Name>
</League>
<League>
  <Id>3</Id>
  <Name>Scottish Premier League</Name>
</League>

1 个答案:

答案 0 :(得分:0)

这是一个使用DOM和XPath的非常简单的例子:

<?php
$str = <<<XML
<root>
<League>
  <Id>1</Id>
  <Name>English Premier League</Name>
</League>
<League>
  <Id>2</Id>
  <Name>English League Championship</Name>
</League>
<League>
  <Id>3</Id>
  <Name>Scottish Premier League</Name>
</League>
</root>
XML;

$dom = new DOMDocument();
$dom->loadXML($str);
$xpath = new DOMXPath($dom);
foreach($xpath->query("(//Leagues/League)[last()]") as $league)
{
    echo $league->nodeValue, "\n";
}

See a Live DEMO here!

More about XPath ?

More about DOM ?