PHP의 ftp_connect() 함수는 지정한 FTP 서버와의 새로운 연결을 생성하는 데 사용됩니다. 이 함수는 FTP 클라이언트를 구현할 때 가장 먼저 호출되는 기본 함수로, 성공적으로 연결되면 이후 파일 업로드·다운로드 등의 작업에 사용할 수 있는 FTP 스트림(stream)을 반환합니다.
문법 (Syntax)
ftp_connect(host, port, timeout);
매개변수 (Parameters)
host − 연결할 FTP 서버의 주소입니다. 도메인 이름(예: ftp.example.com) 또는 IP 주소 형태로 지정할 수 있습니다.
port − FTP 서버의 포트 번호입니다. 기본값은 21이며, 생략할 수 있습니다.
timeout − 네트워크 작업에 적용되는 제한 시간(초 단위)입니다. 지정하지 않으면 기본 시간 제한이 사용됩니다.
반환 값 (Return Value)
ftp_connect() 함수는 연결에 성공하면 FTP 스트림을 반환하고, 실패하면 FALSE를 반환합니다. 따라서 실제 코드에서는 반환 값을 반드시 확인한 후 후속 작업을 진행하는 것이 안전합니다.
사용 예제
아래 예제는 FTP 서버에 연결을 열고, 로그인한 뒤 디렉터리를 이동하고, 마지막으로 연결을 닫는 전체 과정을 보여줍니다.
<?php
$ftp_server = "192.168.0.4";
$ftp_user = "amit";
$ftp_pass = "tywg61gh";
$con = ftp_connect($ftp_server);
$res = ftp_login($con, $ftp_user, $ftp_pass);
ftp_chdir($con, 'demo');
echo ftp_pwd($con);
if (ftp_cdup($con)) {
echo "디렉터리가 변경되었습니다!\n";
} else {
echo "디렉터리 변경에 실패했습니다!\n";
}
echo ftp_pwd($con);
ftp_close($con);
?>
참고 사항
연결을 더 이상 사용하지 않을 때는 반드시 ftp_close()를 호출하여 리소스를 해제해야 합니다. 또한 보안을 위해 일반 FTP 대신 SSL/TLS를 지원하는 ftp_ssl_connect() 사용을 고려하는 것이 좋습니다.