如何在下载过程中解决卷曲损坏的文件



我真的非常需要帮助解决这个问题:

使用脚本:

<?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);

我以前问过,似乎没有人对我如何解决这个问题有解决方案……如果有人甚至可以告诉我为什么会发生IE。是文件大小,二进制传输等吗?我可以使用!

文件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

您可以将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);

最新更新