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);
?>
定義と使用法
ftp_nb_fget()関数は、FTPサーバーからファイルを取得(ダウンロード)し、開いているローカルファイルに保存します(ノンブロッキング)。
ヒント:この関数(ftp_fget()とは逆に)はファイルを非同期的に取得するため、ファイルのダウンロード中に他の操作を実行できます。
構文
<div>ftp_nb_fget(<em>ftp_conn, open_file, server_file, mode, startpos</em>);</div>
パラメータ値
パラメータ |
説明 |
---|---|
ftp_conn | Required 使用するFTP接続を指定します |
open_file | Required データを保存する開いているローカルファイルを指定します |
server_file | Requierd ダウンロードするサーバーファイルを指定します |
mode | Optional 転送モードを指定します。可能な値: FTP_ASCII または FTP_BINARY |
startpos | Option ダウンロードを開始するリモートファイル内の位置を指定します |
Technical Details
Return Value: | 次のいずれかの値:
|
---|---|
PHP バージョン: |
4.3+ |
PHP 変更ログ: |
PHP 7.3 -modeパラメータがオプションになりました。 |
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。