FTP ftp_nb_put

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

ftp_nb_put — FTP 서버에 파일 저장(비차단)


설명

ftp_nb_put(
    FTP\Connection $ftp,
    string $remote_filename,
    string $local_filename,
    int $mode = FTP_BINARY,
    int $offset = 0
): int|false
                

ftp_nb_put()은 FTP 서버에 로컬 파일을 저장합니다.

이 함수와 ftp_put()의 차이점은 이 함수가 파일을 비동기적으로 업로드하므로 파일이 업로드되는 동안 프로그램에서 다른 작업을 수행할 수 있다는 것입니다.


매개변수

ftp
FTP\Connection 인스턴스입니다.
remote_filename
원격 파일 경로입니다.
local_filename
로컬 파일 경로
mode
전송 모드입니다. FTP_ASCII 또는 FTP_BINARY여야 합니다.
offset
업로드를 시작할 원격 파일의 위치입니다.

반환 값

FTP_FAILED 또는 FTP_FINISHED 또는 FTP_MOREDATA를 반환하거나 로컬 파일을 열지 못한 경우 false를 반환합니다.


변경 로그

버전 설명
8.1.0 ftp 매개변수는 이제 FTP\Connection 인스턴스를 필요로 합니다. 이전에는 리소스가 필요했습니다.
7.3.0 mode 매개변수는 이제 선택 사항입니다. 이전에는 필수였습니다.

Examples

예제 #1 ftp_nb_put() 예제

                  
<?php

// Initiate the Upload
$ret = ftp_nb_put($ftp, "test.remote", "test.local", FTP_BINARY);
while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue uploading...
   $ret = ftp_nb_continue($ftp);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error uploading the file...";
   exit(1);
}
?>
                  
                

예제 #2 ftp_nb_put()으로 업로드 재개

                  
<?php

// Initiate
$ret = ftp_nb_put($ftp, "test.remote", "test.local",
                      FTP_BINARY, ftp_size("test.remote"));
// OR: $ret = ftp_nb_put($ftp, "test.remote", "test.local",
//                           FTP_BINARY, FTP_AUTORESUME);

while ($ret == FTP_MOREDATA) {

   // Do whatever you want
   echo ".";

   // Continue uploading...
   $ret = ftp_nb_continue($ftp);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error uploading the file...";
   exit(1);
}
?>
                  
                

기타

  • ftp_nb_fput() - 열린 파일에서 FTP 서버로 파일을 저장합니다(비차단).
  • ftp_nb_continue() - 파일 검색/전송 계속(비차단)
  • ftp_put() - FTP 서버에 파일 업로드
  • ftp_fput() - 열린 파일에서 FTP 서버로 업로드