2014-01-22 75 views
1

期間解決cUrl作者腐敗文件我真的,真的需要幫助,如何解決這個問題,我有:如何下載

使用腳本:

<?php 
    $curl = curl_init(); 
    $fp = fopen("somefile.zip", "w"); 
    curl_setopt ($curl, CURLOPT_URL, "http://website.com/test.zip"); 
    curl_setopt($curl, CURLOPT_FILE, $fp); 
    curl_setopt($curl, CURLOPT_BINARYTRANSFER, 1); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    curl_exec ($curl); 
    curl_close ($curl); 

我以前問過了,沒有一個人似乎有解決方案,我如何解決這個問題......如果有人甚至可以告訴我爲什麼它發生,即。它是文件大小,二進制傳輸等我可以用它!

文件ZIP文件下載並創建somefile.zip,但其中的XML文件部分損壞。

樣品:

K#Teº22)dVTð¼ÜvØ 
rÏ*HIê±dE*¬òPÜÊâR}ÝbJÉÂX:Î@z|Eª2Ér tk­2UÄOK¼É,·,­Ûs¦ê1Z°VÝk6Ù«ËGÝw©5Æ]ÛQcq¥¼½ØïÒÐ]êÈy¨ð¶Çùûü]ÛßþW¤ùâÝÀw|~§ïúÁ¸ÛHBq®*YtrÛÕiî$ /ñ¥n?è¶;_ò 
É¡ä ç&ýOr óß)yÿ¤$+`~TÙAófHU ¢SÝvW¶¦xA5Å׶Ãrå<8^ÐË4w­ qz Ø«<Ñ"*ººÝ?èO^;ÃQûÉOÏÀ¾?ìw|Õ±¥©3w©Ýr£ ÃÊÀ ¿^Á^UÛLß_ôÜÎh4îÖWcíF^8¾ö÷ؼ¾¿`âX3Ûú^{ À<.Æ¡(±1f¢.¸®k/ìÝeÓçê'PAnÓõ¸K`TeQ÷b|'¥Ñ)1ÓãnsÞèàÎZ|ê*+kuw×cªëÇ:§$¤ã¸Î1ü±Úh6ÕÀQ¦©D4Âp4b{Èo¾ 
,4"R 

回答

1

你可以設置CURLOPT_HEADER爲0,然後再試一次?

編輯:

或者試試這個:

$url = 'http://website.com/test.zip'; 
$path = 'somefile.zip'; 


$ch = curl_init($url); 
if($ch === false) 
{ 
    die('Failed to create curl handle'); 
} 

$fp = fopen($path, 'w'); 

$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_FILE, $fp); 

$data = curl_exec($ch); 

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

我不相信它 - 這實際工作! @vincent keine – user2505513

+0

使用Zip PHP類解壓zip-archive時出現問題。使用CURLOPT_FILE啓用捲髮下載Zip-archive。將CURLOPT_HEADER設置爲0(false)就行了。謝謝! – paulus