【发布时间】:2011-03-16 16:20:29
【问题描述】:
我已使用 PHP 成功连接到我的 FTP,我可以使用以下命令查看所有文件:ftp_nlist
但是,有没有一种简单的方法可以将所有这些文件下载到当前目录中?
我找不到任何关于如何做到这一点的示例。
谢谢
【问题讨论】:
我已使用 PHP 成功连接到我的 FTP,我可以使用以下命令查看所有文件:ftp_nlist
但是,有没有一种简单的方法可以将所有这些文件下载到当前目录中?
我找不到任何关于如何做到这一点的示例。
谢谢
【问题讨论】:
另一个简单的解决方案是......
以数组的形式列出文件并单独下载每个文件。
类似:
$contents = ftp_nlist($conn_id, ".");
foreach ($contents as &$value) { $result = ftp_fget($conn_id, $local,&$value, FTP_BINARY); }
您可能需要稍微调整一下代码...
【讨论】:
$value? IE。 &$value?
Call-time pass-by-reference has been removed
是的,有。 NanoFTPD 是 2003 年左右的一个老项目。它使用 PHP 监听 FTP 端口并处理来自客户端的所有请求。它能够执行所有功能,包括将(所有)文件下载到您想要的任何目录。看看here
【讨论】:
尝试使用ftp_get()
$local_file = 'filename.txt';
$server_file = 'filename.txt';
$conn_id = ftp_connect($ftp_server);
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
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";
}
ftp_close($conn_id);
【讨论】: