title
最初の 3 つの要素の要素が必要ですitem
。これは、SimplexmlでサポートされているXpathの典型的なジョブです。このような種類のXpath 1.0式は、ニーズを満たします。
//item[position() < 4]/title
コード例は次のとおりです。
$titles = $xml->xpath('//item[position() < 4]/title');
foreach ($titles as $title)
{
echo $title, "\n";
}
あなたの場合の出力は(数分前の時点で)次のとおりです。
USD - 1 - 405.8400
GBP - 1 - 657.4200
AUD - 1 - 389.5700
ここで Xpath を使用するのは最も正気であり、外部ライブラリは必要ありません。
私が素早く行ったように、キャッシングとエラー処理を含む完全なコード例:
<?php
/**
* Reading Xml File
*
* @link http://stackoverflow.com/q/19609309/367456
*/
$file = "feed.xml";
if (!file_exists($file))
{
$url = 'https://www.cba.am/_layouts/rssreader.aspx?rss=280F57B8-763C-4EE4-90E0-8136C13E47DA';
$handle = fopen($url, 'r');
file_put_contents($file, $handle);
fclose($handle);
}
$xml = simplexml_load_file($file);
if (!$xml)
{
throw new UnexpectedValueException('Failed to parse XML data');
}
$titles = $xml->xpath('//item[position() < 4]/title');
foreach ($titles as $title)
{
echo $title, "\n";
}