我正在尝试通过从simplexml_load_file开始加载内容来解析xml文件。该文件来自wordpress,使用.php文件生成的xml提要。
问题是它永远无法加载xml文件。我不知道我能做些什么来使这项工作。这是代码
<?php
$url = "http://marshallmashup.usc.edu/feed.php";
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$result = curl_exec($ch);
curl_close($ch);
$rss = simplexml_load_string($result);
if( ! $rss = simplexml_load_file($url,NULL, LIBXML_NOERROR | LIBXML_NOWARNING) )
{
echo 'unable to load XML file';
}
else
{
echo 'XML file loaded successfully';
}
?>
答案 0 :(得分:1)
首先在这一行之后:
$result = curl_exec($ch);
你应该加上这个:
$result = utf8_encode($result);
说,你对函数simplexml_load_string($result);
没有任何问题,它将根据你给函数的字符串正确创建一个DOM,这是从php页面获取的feed。您可以在语句var_dump($rss);
之后使用$rss = simplexml_load_string($result);
查看结果。