Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP의 ftp_get() 함수 – FTP 서버 파일을 로컬로 다운로드하기

PHP의 ftp_get() 함수는 FTP 서버에 있는 파일을 다운로드하여 로컬 시스템의 파일로 저장할 때 사용합니다. 웹 애플리케이션에서 원격 서버의 파일을 가져와야 할 때 유용하게 활용할 수 있습니다.

문법(Syntax)

ftp_get(con, local_file, server_file, mode, startpos);

매개변수(Parameters)

  • con − ftp_connect()로 생성한 FTP 연결 리소스입니다.

  • local_file − 다운로드한 데이터를 저장할 로컬 파일의 경로입니다.

  • server_file − FTP 서버에서 다운로드할 파일의 경로입니다.

  • mode − 전송 모드입니다. 텍스트 파일은 FTP_ASCII, 이미지나 압축 파일 등은 FTP_BINARY를 사용합니다.

  • startpos − 다운로드를 시작할 위치(오프셋)입니다. 부분 다운로드나 이어받기에 활용할 수 있으며, PHP 4.3.0부터 추가되었습니다.

반환값(Return)

ftp_get() 함수는 다운로드에 성공하면 TRUE를, 실패하면 FALSE를 반환합니다.

예제(Example)

다음 예제는 FTP 서버의 "demo.txt" 파일을 다운로드하여 로컬의 "new.txt" 파일로 저장하는 코드입니다.

<?php
    $ftp_server = "192.168.0.4";
    $ftp_user = "amit";
    $ftp_pass = "tywg61gh";

    // FTP 서버에 연결
    $con = ftp_connect($ftp_server) or die("$ftp_server 에 연결할 수 없습니다");
    $login = ftp_login($con, $ftp_user, $ftp_pass);

    $my_serverfile = "demo.txt"; // 서버에서 다운로드할 파일
    $my_file = "new.txt";        // 저장될 로컬 파일

    if (ftp_get($con, $my_file, $my_serverfile, FTP_ASCII, 0)) {
        echo "로컬 파일에 성공적으로 저장되었습니다!";
    } else {
        echo "서버 파일 다운로드 중 오류가 발생했습니다!";
    }

    // FTP 연결 종료
    ftp_close($con);
?>

참고 사항

이미지, ZIP 파일 등 바이너리 파일을 다운로드할 때는 반드시 FTP_BINARY 모드를 사용해야 파일이 손상되지 않습니다. 또한 모든 작업이 끝난 후에는 ftp_close() 함수로 연결을 닫아 리소스를 해제하는 것이 좋습니다.