以编程方式将文件下载到内存php

时间:2010-10-23 00:55:41

标签: php facebook

您好我想知道如何使用php将文件下载到变量(或内存)。我尝试过使用file_get_contents和一些没有输出的RSS feed php库(即使使用var_dump)。这是我尝试访问的网址:

http://www.facebook.com/feeds/friends_status.php?id=MY_USER_ID&key=SECRET_KEY&format=rss20

MY_USER_ID是我的脸谱ID,SECRET_KEY是密钥。我正在使用RSS提要方法,因为我已经尝试了大约5个小时来制作一个Facebook画布应用程序,该应用程序取消了我朋友的姓名和状态但没有成功。

编辑:您可以通过将“http”替换为“Feed”

来访问没有404错误的Feed

1 个答案:

答案 0 :(得分:2)

许多API都需要用户代理字符串。所以你可以尝试设置它。您可以使用cURL获取文件,并更改标题。试试这个功能:

    function getUrl($url) {
        $ch = curl_init($url);
        curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0");
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $output = curl_exec($ch);      
        curl_close($ch);
        return $output;
    }

用法:

$file = getUrl('http://www.facebook.com/feeds/friends_status.php?id=MY_USER_ID&key=SECRET_KEY&format=rss20')