PHP ftp_nb_fget() 函数
实例
从 FTP 服务器下载文件,并将其保存到打开的本地文件(非阻塞):
<?php
// connect and login to FTP server
$ftp_server = "ftp.example.com";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);
$server_file = "somefile.txt";
// open local file to write to
$local_file = "local.txt";
$fp = fopen($local_file,"w");
// initiate download
$d = ftp_nb_fget($ftp_conn, $fp, $server_file, FTP_BINARY)
while ($d == FTP_MOREDATA)
{
// do whatever you want
// continue downloading
$d = ftp_nb_continue($ftp_conn);
}
if ($d != FTP_FINISHED)
{
echo "Error downloading $server_file";
exit(1);
}
// close connection and file handler
ftp_close($ftp_conn);
fclose($fp);
?>
// connect and login to FTP server
$ftp_server = "ftp.example.com";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);
$server_file = "somefile.txt";
// open local file to write to
$local_file = "local.txt";
$fp = fopen($local_file,"w");
// initiate download
$d = ftp_nb_fget($ftp_conn, $fp, $server_file, FTP_BINARY)
while ($d == FTP_MOREDATA)
{
// do whatever you want
// continue downloading
$d = ftp_nb_continue($ftp_conn);
}
if ($d != FTP_FINISHED)
{
echo "Error downloading $server_file";
exit(1);
}
// close connection and file handler
ftp_close($ftp_conn);
fclose($fp);
?>
定义和用法
ftp_nb_fget() 函数从 FTP 服务器上下载一个文件并保存到本地已经打开的一个文件中 (non-blocking)。
提示: 与 ftp_fget() 不同,该函数异步地获取文件。这意味着您的程序可以在文件下载时执行其他操作。
语法
ftp_nb_fget(ftp_conn, open_file, server_file, mode, startpos);
参数值
参数 | 描述 |
---|---|
ftp_conn | 提示:|
open_file | 必需。规定本地文件。 |
server_file | 必需。规定从中进行拷贝的文件的路径。 |
mode |
必需。规定传输模式。可能的值有:
|
startpos | 必需。规定在远程文件中的何处开始拷贝。默认是 0。 |
技术细节
返回值: | 以下值之一:
|
---|---|
PHP 版本: | 4.3+ |
PHP 更新日志: | PHP 7.3 - mode 参数是可选的。 |