将facebook图像下载到本地服务器

时间:2011-11-18 07:02:21

标签: php facebook image image-uploading

我正在使用

function save_image($inPath,$outPath){
    //Download images from remote server
    $in=    fopen($inPath, "rb");
    $out=   fopen($outPath, "wb");
    while ($chunk = fread($in,8192))
    {
        fwrite($out, $chunk, 8192);
    }
    fclose($in);
    fclose($out);
}

此功能工作正常,但如果我打开图像,则显示文件为空。

我也尝试过file_get_content()函数。但仍然遇到同样的问题。

1 个答案:

答案 0 :(得分:1)

我总是喜欢使用curl来做这种事情。

function saveImage($url, $savePath) 
{

    $ch = curl_init($url);
    $fp = fopen($savePath, 'wb');

    curl_setopt($ch, CURLOPT_TIMEOUT, 20);
    curl_setopt($ch, CURLOPT_FAILONERROR, true);
    curl_setopt($ch, CURLOPT_FILE, $fp);
    curl_setopt($ch, CURLOPT_HEADER, 0);

    $result = curl_exec($ch);

    fclose($fp);
    curl_close($ch);

    return $result;

}

如果您没有安装curl,请查看官方PHP curl installation instructions,安装Windows的卷曲非常简单。