2011-10-20 47 views
0

我想通过从simplexml_load_file开始加载内容来解析xml文件。该文件来自wordpress,使用由.php文件生成的xml提要。simplexml_load_file不是以.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'; 
    } 

    ?> 

回答

1

首先,该行后:

$result = curl_exec($ch); 

你应该加上这样一句:

$result = utf8_encode($result); 

说,你必须与功能没有问题simplexml_load_string($result);这将正确地创建一个基于你给该函数的字符串的DOM,这是从PHP页面获得的feed。您可以在$rss = simplexml_load_string($result);之后使用var_dump($rss);查看结果。

+0

谢谢..有帮助! – Allen

+0

@Allen很高兴为您效劳。 –

相关问题