用php(ftp)下载文件后损坏

时间:2019-01-14 16:46:14

标签: php ftp corruption winrar

我已使用以下代码下载了文件。但是,当我尝试使用winrar将其打开以将文件解压缩到gz文件夹中时,我得到该文件已损坏的消息。

这是我的代码:

$local_file = "wp-content/uploads/wpallimport/files/product-feed_toys.csv.gz";
$server_file = "product-feed_toys.csv.gz";

$ftp_username="hidden";
$ftp_userpass="hidden";


$ftp_server = "hidden";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to 
$ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);


if (ftp_get($ftp_conn, $local_file, $server_file, FTP_ASCII)){
echo "Successfully written to $local_file. ";
}

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


ftp_close($ftp_conn);

将文件从服务器a复制到服务器b期间我的文件是否损坏?还是首先必须将其损坏?

我正在下载一个很多人使用的文件,所以这就是为什么如果在我下载之前文件已损坏,它会很奇怪。感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

尝试将FTP模式切换为二进制模式,即替换此行:

if (ftp_get($ftp_conn, $local_file, $server_file, FTP_ASCII)) {

与此:

if (ftp_get($ftp_conn, $local_file, $server_file, FTP_BINARY)) {

More information here