1

在我的网页中,除了 rss 提要外,一切正常。所有 html 代码和脚本都已加载。但是RSS提要是空白的。我尝试了不同的格式,但没有一个有效。请帮忙。我将单独文件中的代码用作 functions.php 并在 index.php 中调用它

函数.php

<?php

function parserSide($feedURL) {
    $rss = simplexml_load_file($feedURL);
    echo "<ul class='newsSide'>";
    $i = 0;
    foreach ($rss->channel->item as $feedItem) {
        $i++;
        echo "<li><a href='$feedItem->link' title='$feedItem->title'>" . $feedItem->title . "</a></li>";
        if($i >= 5) break;
    }
    echo "</ul>";
}

索引.php

<?php

require_once('functions.php');
parserSide("http://feeds.reuters.com/reuters/technologyNews"); ?>
4

2 回答 2

1

看不到任何问题,除了您没有检查simplexml_load_file. 失败时,函数将返回FALSE,很可能就是这种情况。或者,您的服务器已禁用远程文件访问,如下所示:simplexml_load_file not working ?

于 2013-09-13T08:10:19.903 回答
0
  1. 在函数中使用return而不是echo
  2. 确保functions.php包含文件

函数.php

function parserSide($feedURL) {
    $rss = simplexml_load_file($feedURL);
    $output = "<ul class='newsSide'>";
    $i = 0;
    foreach ($rss->channel->item as $feedItem) {
        $i++;
        $output .= "<li><a href='$feedItem->link' title='$feedItem->title'>" . $feedItem->title . "</a></li>";
        if($i >= 5) break;
    }
    $output .= "</ul>";

    return $output;
}

索引.php

require_once('functions.php');

echo parserSide("http://feeds.reuters.com/reuters/technologyNews");
于 2013-09-13T07:39:47.720 回答