當我嘗試解析谷歌rss提要時,我得到網絡錯誤:在鉻和firefox開發人員工具中的500內部服務器錯誤。下載rss feed的第一部分(使用curl)工作正常。解析rss提要給500內部服務器錯誤
我發現這個例子:http://www.joevasquez.info/development/parsing-xml-feeds-with-php-rss-and-atom/#more-63
有人能說出什麼我做錯了嗎?謝謝。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<?php
if (function_exists("curl_init")){
$ch=curl_init();
//curl_setopt($ch,CURLOPT_URL,'http://www.joevasquez.info/feed/');
curl_setopt($ch,CURLOPT_URL, 'http://news.google.com/news?hl=en&topic=t&output=rss');
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
//curl_setopt($ch,CURLOPT_HEADER,0);
$data=curl_exec($ch);
curl_close($ch);
//print($data);
$doc=new SimpleXmlElement($data,LIBXML_NOCDATA);
if (isset($doc->channel)) parseRSS($doc);
function parseRSS($xml){
$cnt=count($xml->channel->item);
for ($i=0;$i<$cnt;$i++){
$url=$xml->channel->item[$i]->link;
$title=$xml->channel->item[$i]->title;
$desc=$xml->channel->item[$i]->description;
echo '<a href="'.$url.'">'.$title.'</a>'.$desc.'<br>';
}
}
?>
</body>
</html>
每次PHP生成500錯誤時,它都伴隨着錯誤日誌中的有用條目。假設你的腳本的開始是直接輸出一個不是'<?php'的標籤,那很可能是一個分析錯誤。查看您的Web服務器錯誤日誌並報告您找到的任何消息。 – DaveRandom 2012-07-12 08:39:21
我試圖在<?php之前刪除dtd,並且仍然收到相同的錯誤。 – vaanipala 2012-07-13 05:42:29
我現在正在檢查錯誤日誌 – vaanipala 2012-07-13 05:50:22