drgc9632 2015-05-25 21:17
浏览 86
已采纳

ftp_get()损坏大文件下载

I have to download a large file(approx~-9mb) in .gz format from the server using ftp. I have written a function which downloads the file completely and correctly but when i put this code online , the file is downloaded but the file gets corrupt. Here is my code:

function downloadFile($ftp_server, $username, $password, $server_file, $local_file)
{

// download server file
    $ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
    $login = ftp_login($ftp_conn, $username, $password);
    ftp_pasv($ftp_conn, true);
    if (ftp_get($ftp_conn, $local_file, $server_file, FTP_ASCII)) {
        echo "Successfully written to $local_file.";
        //   exit;

    } else {
        echo "Error downloading $server_file.";
    }

}

Here is how i call it

ini_set('max_execution_time', 0);
$username = "username";
$password = "password";
$xmlFile = __DIR__ . "/monster.xml.gz";
$local_file = __DIR__ . "/monster.xml";
$ftp_server = "ftp.monster.com";
$server_file = "/US~Partner~Sample Feed.xml.gz";


downloadFile($ftp_server,$username,$password,$server_file,$xmlFile);

The file must be downloaded and the then I will convert it into XML for further processing. Note: The file is downloading perfect on localhost , this problem occurs as we put it on live server.

  • 写回答

1条回答 默认 最新

  • dongwen9947 2015-05-29 07:19
    关注

    GZ file may not only have text in it . So you have to download it with binary mode so that anything containing in it could be download successfully

    if (ftp_get($ftp_conn, $local_file, $server_file, FTP_ASCII)) {
        echo "Successfully written to $local_file.";
        //   exit;
    
    } else {
        echo "Error downloading $server_file.";
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号