라이브러리

[PHP] ftp_nb_fput - 열려 있는 파일의 파일을 FTP 서버에 저장합니다(비차단)


FTP (File Transfer Protocol) 은 파일을 전송하기 위한 프로토콜입니다. PHP 에서 FTP를 사용하기 위해서는 FTP 서버에 접속하고, 파일을 전송하는 과정을 거칩니다. 이 글에서는 PHP 에서 FTP 서버에 파일을 전송하는 방법에 대해 설명하겠습니다.

FTP 서버에 접속하기


FTP 서버에 접속하기 위해서는 FTP 연결을 설정해야 합니다. PHP 에서 FTP 연결을 설정하는 방법은 다음과 같습니다.

#hostingforum.kr
php

$ftp_server = 'ftp.example.com';

$ftp_username = 'username';

$ftp_password = 'password';



$ftp_conn = ftp_connect($ftp_server);

if (!$ftp_conn) {

    echo 'FTP 연결을 설정할 수 없습니다.';

    exit;

}



if (!ftp_login($ftp_conn, $ftp_username, $ftp_password)) {

    echo 'FTP 로그인에 실패했습니다.';

    ftp_close($ftp_conn);

    exit;

}



FTP 서버에 파일 전송하기


FTP 서버에 파일을 전송하기 위해서는 `ftp_nb_fput` 함수를 사용합니다. `ftp_nb_fput` 함수는 FTP 서버에 파일을 전송하는 비동기 함수입니다.

#hostingforum.kr
php

$file_path = 'local_file.txt';

$remote_path = 'remote_file.txt';



$ftp_conn = ftp_connect('ftp.example.com');

ftp_login($ftp_conn, 'username', 'password');



$ftp_nb_fput($ftp_conn, $remote_path, fopen($file_path, 'r'), FTP_BINARY);



if (ftp_nb_continue($ftp_conn) == 1) {

    echo '파일 전송이 완료되었습니다.';

} else {

    echo '파일 전송에 실패했습니다.';

}



ftp_close($ftp_conn);



FTP 서버에 파일 전송하기 (비동기)


`ftp_nb_fput` 함수는 FTP 서버에 파일을 전송하는 비동기 함수입니다. 비동기 함수는 파일 전송이 완료되기까지 대기하지 않고, 다른 작업을 수행할 수 있습니다.

#hostingforum.kr
php

$file_path = 'local_file.txt';

$remote_path = 'remote_file.txt';



$ftp_conn = ftp_connect('ftp.example.com');

ftp_login($ftp_conn, 'username', 'password');



$ftp_nb_fput($ftp_conn, $remote_path, fopen($file_path, 'r'), FTP_BINARY);



// 다른 작업을 수행할 수 있습니다.



while (ftp_nb_continue($ftp_conn) == 1) {

    // 다른 작업을 수행할 수 있습니다.

}



if (ftp_nb_complete($ftp_conn) == 1) {

    echo '파일 전송이 완료되었습니다.';

} else {

    echo '파일 전송에 실패했습니다.';

}



ftp_close($ftp_conn);



FTP 서버에 파일 전송하기 (동기)


`ftp_fput` 함수는 FTP 서버에 파일을 전송하는 동기 함수입니다. 동기 함수는 파일 전송이 완료될 때까지 대기합니다.

#hostingforum.kr
php

$file_path = 'local_file.txt';

$remote_path = 'remote_file.txt';



$ftp_conn = ftp_connect('ftp.example.com');

ftp_login($ftp_conn, 'username', 'password');



ftp_fput($ftp_conn, $remote_path, fopen($file_path, 'r'), FTP_BINARY);



if (ftp_close($ftp_conn)) {

    echo '파일 전송이 완료되었습니다.';

} else {

    echo '파일 전송에 실패했습니다.';

}



예제


FTP 서버에 파일을 전송하는 예제는 다음과 같습니다.

#hostingforum.kr
php

$file_path = 'local_file.txt';

$remote_path = 'remote_file.txt';



$ftp_conn = ftp_connect('ftp.example.com');

ftp_login($ftp_conn, 'username', 'password');



// 비동기 전송

$ftp_nb_fput($ftp_conn, $remote_path, fopen($file_path, 'r'), FTP_BINARY);



// 다른 작업을 수행할 수 있습니다.



while (ftp_nb_continue($ftp_conn) == 1) {

    // 다른 작업을 수행할 수 있습니다.

}



if (ftp_nb_complete($ftp_conn) == 1) {

    echo '파일 전송이 완료되었습니다.';

} else {

    echo '파일 전송에 실패했습니다.';

}



ftp_close($ftp_conn);



이 예제는 FTP 서버에 파일을 전송하는 비동기 방법을 보여줍니다. 비동기 방법은 파일 전송이 완료되기까지 대기하지 않고, 다른 작업을 수행할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 543 페이지

검색

게시물 검색