rss fetch中的foreach循环错误

时间:2013-04-25 01:45:04

标签: php rss

我正在尝试从rss Feed中获取链接,但是在执行此操作时出现以下错误

Warning: Invalid argument supplied for foreach() in /home/sss/public_html/radiorss/feedcrawler.php on line 1 1

以下是我为获取值而运行的代码。

    <?php
    include 'xml_regex.php';
    include 'simple_html_dom.php';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,'www.newsonair.nic.in/NSD.asp');
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $xml = curl_exec($ch);
    curl_close($ch);

    foreach($item as $item) {
      echo $item->title.'<br />';
      echo $item->pubDate.'<br />';
      echo $item->link.'<br />';
      echo $item->description.'<br />';
      echo $item->enclosure.'<br />';
    }

?>

请帮助我知道我错在哪里。 提前致谢

1 个答案:

答案 0 :(得分:0)

  

警告:为foreach()提供的参数无效   第11行/home/sss/public_html/radiorss/feedcrawler.php

此类错误表示您未将数组传递给foreach构造。

你的第一个问题是你需要确保$ item是一个初始化的数组。您的代码示例未显示其定义位置。您必须将其追溯到它的原点,并确保它的值是一组w / e对象。 var_dump()函数可用于此目的。

你的下一个问题是你要覆盖foreach中数组的值。

foreach($item as $item) {
...
}

需要类似......

foreach($items as $item) or foreach($item as $aItem)