例
FTPサーバからファイルをダウンロードし、開いているローカルファイルに保存します(non-blocking) :
<?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()関数は、取得(downloads) FTPサーバからファイルを、オープンローカルファイルに保存します(non-blocking) 。
ヒント:この機能(と反対としてftp_fget()ファイルがダウンロードされている間に他の操作を実行できるように)、非同期ファイルを検索します。
構文
ftp_nb_fget( ftp_connection,open_file,server_file,mode,startpos );
パラメーター | 説明 |
---|---|
ftp_connection | 必須。 FTP接続を使用するように指定します |
open_file | 必須。 我々はデータを格納するオープンローカルファイルを指定します。 |
server_file | 必須。 ダウンロードするには、サーバーのファイルを指定します。 |
mode | 必須。 転送モードを指定します。 可能な値:FTP_ASCIIまたはFTP_BINARY |
startpos | 任意。 からダウンロードを開始するためにリモートファイル内の位置を指定します。 |
技術的な詳細
戻り値: | この関数は、次のいずれかの値を返します。
|
---|---|
PHPバージョン: | 4.3以降 |
<PHP FTPリファレンス