我尝试使用PHP 5.3.3(linux build)中的ftp_get从FTP服务器获取文件。 我可以登录,我可以列出文件,但ftp_get命令不下载文件。
这是我正在使用的代码。
$ftp_user_name = DBUSER;
$ftp_user_pass = DBUSERPASS;
$ftp_server = HOST;
$local_file = "poutarde.odt";
$server_file = "poutarde.odt";
// set up a connection to ftp server
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// turn passive mode on
ftp_pasv($conn_id, true);
// try to download $server_file and save to $local_file
if (ftp_get($conn_id, $local_file, $server_file, FTP_BINARY)) {
echo "Successfully written to $local_file\n";
} else {
echo "There was a problem\n";
}
// close the connection
ftp_close($conn_id);
“poutarde.odt”文件位于FTP的根目录。
我从客户端(filezilla)检查了FTP下载,一切正常。 但是,使用ftp_get,我什么都没得到(除了回声“有一个问题”),甚至没有PHP错误,它只是失败。
谢谢你的帮助。
里诺
答案 0 :(得分:-3)
ftp_get需要文件处理程序,而不是文件名。
$local_file = fopen("poutarde.odt",'w');
//...
if(ftp_get($conn_id, $local_file, $server_file, FTP_BINARY))