PHP 4, PHP 5, PHP 7, PHP 8
ftp_fget() 函数从 FTP 服务器上下载文件,并将文件内容写入一个打开的本地文件流。
bool ftp_fget(resource $ftp_stream, resource $handle, string $remote_file, int $mode, int $offset = 0)
成功时返回 true,失败时返回 false。
以下示例展示了如何通过 ftp_fget() 函数将 FTP 服务器上的文件下载到本地文件中:
示例代码:
<?php
$ftp_server = "ftp.example.com";
$ftp_user = "username";
$ftp_pass = "password";
$remote_file = "/path/on/server/file.txt";
$local_file = "local_file.txt";
// 连接 FTP 服务器
$conn_id = ftp_connect($ftp_server);
// 登录 FTP
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
// 打开本地文件用于写入
$handle = fopen($local_file, "w");
if ($handle) {
// 下载远程文件写入本地文件
if (ftp_fget($conn_id, $handle, $remote_file, FTP_BINARY)) {
echo "文件下载成功!";
} else {
echo "文件下载失败。";
}
fclose($handle);
} else {
echo "无法打开本地文件。";
}
} else {
echo "FTP 登录失败。";
}
// 关闭 FTP 连接
ftp_close($conn_id);
?>
示例代码首先连接并登录到指定的 FTP 服务器。成功登录后,打开本地文件用于写入。接着使用 ftp_fget() 从 FTP 服务器上下载指定的远程文件,并将内容写入本地文件。如果下载成功,会输出“文件下载成功!”,否则提示下载失败。最后关闭打开的文件句柄和 FTP 连接。