空RSS结果

时间:2010-11-04 06:05:52

标签: php xml rss

为什么此代码在我的托管中结果为空,但在我的本地运行良好?

$raw = file_get_contents($rssURL); 
$xml = new SimpleXmlElement($raw);

echo "<b>RSS Items:</b><br /><br />";
foreach($xml->channel->item as $item) {
    echo $item->title."</br >";
}

libxml版本:2.6.32; libxml2版本:2.6.32

我也试过这段代码:

# INSTANTIATE CURL.
$curl = curl_init();

# CURL SETTINGS.
curl_setopt($curl, CURLOPT_URL, $rssURL);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($curl, CURLOPT_VERBOSE, 1);  
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);  

# GRAB THE XML FILE.
$xml = curl_exec($curl);

curl_close($curl);

# SET UP XML OBJECT.
$xmlObj = simplexml_load_string($xml);

echo "<b>RSS Items:</b><br /><br />";
foreach($xmlObj->channel->item as $item) {
    echo $item->title."</br >";
}

echo "<br /><b>var_dump:</b><br><br>";
var_dump(libxml_get_errors())

结果是array(0) { }

为Windows和Linux编写此代码段之间是否存在任何差异(我不这么认为)?

任何想法?

2 个答案:

答案 0 :(得分:0)

http://www.php.net/manual/en/function.libxml-get-errors.php开始,找出simplexml_load_string()抛出的错误,因为它在错误时返回false。

此外,您的提供商可能不允许您通过软件拨打外线电话,只是想一想。

答案 1 :(得分:0)

我使用godaddy,我必须输入代理才能拨打电话。

curl_setopt ($curl,CURLOPT_PROXY,'http://proxy.shr.secureserver.net:3128');