文件损坏后下载它与 php (ftp).



我使用以下代码下载了一个文件。但是当我尝试使用 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 的过程中,我的文件是否损坏?还是首先必须损坏它?

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

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

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

有了这个:

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

更多信息在这里

最新更新