普通网友 2013-04-16 14:26
浏览 38
已采纳

php / curl / xml解析器

a while ago i did a quick news parser for a friend.

here is the code:

$ch = curl_init("http://feeds.energydigger.com/headlines.xml");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);
$doc = new SimpleXmlElement($data, LIBXML_NOCDATA);

if(isset($doc->channel))
{
    parseRSS($doc);
}
function parseRSS($xml)
{
    $cnt = 3;
    for($i=0; $i<$cnt; $i++)
    {
    $url    = $xml->channel->item[$i]->link;
    $title  = $xml->channel->item[$i]->title;
    $desc = $xml->channel->item[$i]->description;
    $date = $xml->channel->item[$i]->pubDate;

    echo '<p><a href="'.$url.'">'.$title.'</a><br />'.$date.'</p>';
    }
}

this has been working perfect up till today and now i am getting a 500 server error on the page its trying to show the list.

Have i missed something obvious here or that anyone can spot easily

thanks in advance

PS i modified someones code i found a tutorial on

  • 写回答

1条回答 默认 最新

  • doupai6875 2013-04-16 14:40
    关注

    I just copy and pasted you code in a php page on my server and it works correctly.

    I suspect your problem is curl installation. You probably get this error: Fatal error: Call to undefined function curl_init() on line 2 This is because you need to initialize curl extension.

    Here is how to do it: http://nz.php.net/manual/en/curl.installation.php

    This might also help:

    Call to undefined function curl_init()

    curl_init() function not working

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?