下载完成时将加载gif替换为文本(cURL)


Replace Loading gif with text when download is finish (cURL)

我正在使用CURL下载一些文件,我的代码如下:

$ch = curl_init();
$fp = fopen ($local_file, 'w+');
$ch = curl_init($remote_file);
curl_setopt($ch, CURLOPT_TIMEOUT, 50);
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_ENCODING, "");
curl_exec($ch);
curl_close($ch);
fclose($fp);

有时文件很大,所以下载完成需要一些时间,所以我想显示一个加载gif(如下所示:http://4gettv.com/wp-content/uploads/2011/10/Loading_video.gif)但我不知道如何知道下载已经结束,有人能帮我处理这个代码吗?

p.s.一切都在服务器上进行,所以不要在我的电脑上下载:)

我坚信:

...
curl_exec($ch);
curl_close($ch);
fclose($fp);
// here download is done

如果没有,您可以使用curl:的回调选项

function progressFunction($clientp, $dltotal, $dlnow, $ultotal, $ulnow) {
    if ($dlnow == $dltotal) {
        // finished
    }
}
curl_setopt($ch, CURLOPT_NOPROGRESS, '0');
curl_setopt($ch, CURLOPT_PROGRESSFUNCTION, 'progressFunction');