Php卷曲不正确的下载

时间:2012-02-09 22:36:21

标签: php xml curl download

我正在尝试使用Youtube的API来提取视频列表并显示它们。要做到这一点,我需要卷曲他们的api并返回xml文件,然后我将解析。

当我运行以下卷曲功能时

function get_url_contents($url){
        $crl = curl_init();
        $timeout = 5;
        curl_setopt ($crl, CURLOPT_URL,$url);
        curl_setopt ($crl, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt ($crl, CURLOPT_CONNECTTIMEOUT, $timeout);
        $ret = curl_exec($crl);
        curl_close($crl);
        return $ret;
}

反对网址

http://gdata.youtube.com/feeds/api/videos?q=Apple&orderby=relevance

保存的字符串非常糟糕。没有< >标签,或大部分字符的一半。如果我在浏览器中查看它,它看起来100%不同。

我尝试过print,echo和var dump,它们都显示它完全不同,这使得解析它变得不可能。

如何从服务器正确获取文件?

2 个答案:

答案 0 :(得分:2)

这对我有用。我很确定文件的返回没有错误,但是当你打印它时,<>标签没有显示。但如果查看源代码,就可以看到它们。

试试这个,你可以看到它的工作原理:

$content = get_url_contents('http://gdata.youtube.com/feeds/api/videos?q=Apple&orderby=relevance');
$xml = simplexml_load_string($content);
print_r($xml);

答案 1 :(得分:1)

利用Google提供的客户端库,让您的生活更轻松。

http://code.google.com/apis/youtube/2.0/developers_guide_php.html