我使用以下代码下载了一个文件。但是当我尝试使用 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)) {
更多信息在这里