ftp_nb_get

ftp_nb_get,一種函式,用來獲取參數 remote_file 指定的的遠程檔案,並保存到由參數 local_file 指定的本地檔案。

基本介紹

  • 外文名:ftp_nb_get
  • 獲取地點: FTP 伺服器
  • 作用:獲取檔案並寫入本地檔案
  • 開始讀取:從檔案的偏移量 100 處開始讀取
ftp_nb_get,說明,

ftp_nb_get

(PHP 4 >= 4.3.0)
ftp_nb_get -- 從 FTP 伺服器上獲取檔案並寫入本地檔案(non-blocking)

說明

bool ftp_nb_get ( resource ftp_stream, string local_file, string remote_file, int mode [, int resumepos])
傳輸模式參數 mode 只能為 FTP_ASCII (文本模式) 或 FTP_BINARY (二進制模式) 兩種。與 ftp_get() 函式不同的是,此函式上傳檔案的時候採用的是異步傳輸模式,也就意味著在檔案傳送的過程中,你的程式可以繼續乾其它的事情。
返回 FTP_FAILEDFTP_FINISHEDFTP_MOREDATA
例子 2. 使用 ftp_nb_get()函式斷線續傳
<?php
// 開始
$ret = ftp_nb_get ($my_connection, "test", "README", FTP_BINARY,
filesize("test"));
// 或: $ret = ftp_nb_get ($my_connection, "test", "README",
// FTP_BINARY, FTP_AUTORESUME);
while ($ret == FTP_MOREDATA) {
// 可以插入其它代碼
echo ".";
// 繼續傳送...
$ret = ftp_nb_continue ($my_connection);
}
if ($ret != FTP_FINISHED) {
echo "下載出錯...";
exit(1);
}
?>
例子 3. 用 ftp_nb_get()在 100 的位置斷線續傳並存為 "newfile"
// 禁止自動搜尋
ftp_set_option ($my_connection, FTP_AUTOSEEK, FALSE);
// 開始
$ret = ftp_nb_get ($my_connection, "newfile", "README", FTP_BINARY, 100);
while ($ret == FTP_MOREDATA) {
...
// 繼續下載...
$ret = ftp_nb_continue ($my_connection);
}
在上邊的例子中,"newfile" 檔案比伺服器上的檔案 "README" 要小 100 位元組。這是因為我們是從檔案的偏移量 100 處開始讀取的,如果沒有禁止 FTP_AUTOSEEK,則 "newfile" 的前 100 位元組將會是 '\0'。

相關詞條

熱門詞條

聯絡我們