не удается прочитать xml-канал yahoo на php


Я пытаюсь прочитать rss-канал yahoo (http://news.yahoo.com/rss/us ) в php с использованием функции xml

Это мой очень простой код:

 $xml = simplexml_load_file('xml.xml');
 var_dump($xml['channel']);

Но я показываю НОЛЬ:

adam@cka: php test.php
NULL

Мой XML-файл сломан? или в php есть лучшая функция для чтения xml-файла?

Я вижу, что элемент существует в XML-файле, и я правильно загрузил файл на свой компьютер.

Author: Adam, 2011-12-05

2 answers

SimpleXML возвращает объект, а не массив. Попробуйте это:

<?php
 $xml = simplexml_load_file('http://news.yahoo.com/rss/us');
 var_dump($xml->channel);
?>
 6
Author: Tak, 2011-12-05 01:12:54

Что-то вроде этого:

$rss = simplexml_load_file('http://news.yahoo.com/rss/us');

echo $rss->channel->title;

foreach ($rss->channel->item as $item) {
   echo $item->link. " -- " .$item->title;
   echo $item->pubDate;
   echo $item->description;
} 
 0
Author: Sudhir Bastakoti, 2011-12-05 01:22:45