2013-08-06 164 views
0

我想追加文件,然后存在,在CURL下载功能,不覆盖。我使用这段代码,但它不起作用。请帮帮我。追加文件,不覆盖

$curl = curl_init($url); 
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt($curl, CURLOPT_HEADER, 0); 

if(isset($_GET['resumedownload'])){ 
    if (file_exists($dir.$dirName.'/movie.flv')) { 
     $targetFile = fopen($dir.$dirName.'/movie.flv', 'r'); 
     curl_setopt($curl, CURLOPT_INFILE, $targetFile); 
    } 
} 

curl_setopt($curl, CURLOPT_TIMEOUT, 3600); 
curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Ubuntu; X11; Linux i686; rv:9.0.1) Gecko/20100101 Firefox/9.0.1"); 
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); 

curl_setopt($curl, CURLOPT_REFERER, $file); 
curl_setopt($curl, CURLOPT_COOKIEFILE,'cookie.txt'); 
curl_setopt($curl, CURLOPT_NOPROGRESS, false); 
curl_setopt($curl, CURLOPT_PROGRESSFUNCTION, 'progressCallback'); 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 


curl_setopt($curl, CURLOPT_FILE, $targetFile); 
curl_exec($curl); 
fclose($curl); 
+0

为CURLOPT_FILE您的文件处理程序与 '只读' 标记。这是故意的吗? –

+0

谢谢大人! –

+0

现在保存该文件,但仍覆盖旧文件,应附加到它。 –

回答

0

您的CURLOPT_FILE文件处理程序标记为'只读'。

试试这个:

$targetFile = fopen($dir.$dirName.'/movie.flv', 'a');