이 기사의 예는 참조용으로 PHP FTP 파일 업로드 및 다운로드를 위한 특정 코드를 공유합니다. 구체적인 내용은 다음과 같습니다.
ftp 파일 업로드
php에는 상대적으로 간단한 ftp 작업을 위한 함수 패키지가 함께 제공됩니다. ftp 구현 파일 업로드 작업은 다음 단계를 통해 완료할 수 있습니다.
1. FTP 서버의 IP 주소와 포트 정보를 확인합니다(기본 포트를 사용하는 경우에는 신경쓰지 않아도 됩니다). .ftp_connect 작업을 수행하고 ftp 서버에 연결합니다(port 매개변수가 설정되었는지 주의해야 합니다).
3. ftp_login 작업을 수행하고 ftp 사용자 이름과 비밀번호를 사용하여 로그인합니다.
4. 파일만 업로드해야 하고 다른 요구 사항이 없으면 여기로 이동하세요. 파일 업로드의 ftp_put 작업을 수행할 수 있습니다. 업로드된 파일을 디렉터리에 따라 저장해야 한다면 계속 진행하세요. . ftp_nlist를 사용하여 해당 ftp 디렉토리에서 디렉토리 및 파일 이름을 확인하고 디렉토리가 존재하는지 여부를 확인하십시오. ftp_mkdir을 사용하여 디렉토리를 생성해야 합니다.
7. . ftp_put 작업을 수행하여 파일을 업로드합니다.
8. ftp 연결을 닫습니다.
ftp의 날짜 형식 디렉터리에 따라 파일을 업로드하려면 간단한 코드 구현을 만드세요.
<?php $host = '10.0.0.42'; $user = 'uftp'; $pwd = 'uftp'; // 进行ftp连接,根据port是否设置,传递的参数会不同 if(empty($port)){ $f_conn = ftp_connect($host); }else{ $f_conn = ftp_connect($host, $port); } if(!$f_conn){ echo "connect fail\n"; exit(1); } echo "connect success\n"; // 进行ftp登录,使用给定的ftp登录用户名和密码进行login $f_login = ftp_login($f_conn,$user,$pwd); if(!$f_login){ echo "login fail\n"; exit(1); } echo "login success\n"; // 获取当前所在的ftp目录 $in_dir = ftp_pwd($f_conn); if(!$in_dir){ echo "get dir info fail\n"; exit(1); } echo "$in_dir\n"; // 获取当前所在ftp目录下包含的目录与文件 $exist_dir = ftp_nlist($f_conn, ftp_pwd($f_conn)); print_r($exist_dir); // 要求是按照日期在ftp目录下创建文件夹作为文件上传存放目录 echo date("Ymd")."\n"; $dir_name = date("Ymd"); // 检查ftp目录下是否已存在当前日期的文件夹,如不存在则进行创建 if(!in_array("$in_dir/$dir_name", $exist_dir)){ if(!ftp_mkdir($f_conn, $dir_name)){ echo "mkdir fail\n"; exit(1); }else{ echo "mkdir $dir_name success\n"; } } // 切换目录 if(!ftp_chdir($f_conn, $dir_name)){ echo "chdir fail\n"; exit(1); }else{ echo "chdir $dir_name success\n"; } // 进行文件上传 $result = ftp_put($f_conn, 'bbb.mp3', '/root/liang/ftp/bbb.mp3', FTP_BINARY); if(!$result){ echo "upload file fail\n"; exit(1); }else{ echo "upload file success\n"; exit(0); }
Print:
root@webdevelop232:~/liang/ftp# php ftp.php connect success login success /home/uftp Array ( [0] => /home/uftp/Kalimba.mp3 [1] => /home/uftp/test.txt ) 20170721 mkdir 20170721 success chdir 20170721 success upload file success
인쇄 작업이 성공한 것을 확인할 수 있습니다. 이제 가세요. FTP 서버의 디렉토리에 업로드된 파일을 확인하세요.
ftp 파일 다운로드
파일 업로드에 비해 php를 사용하여 ftp 파일을 다운로드하는 경우는 정말 드물지만, 이 기능이 존재하기 때문에 항상 이용할 수 있는 사람들이 있다는 의미이므로 간단하게도 만들어보았습니다. 하나의 예.
위에 업로드한 bbb.mp3 파일을 다운로드 대상으로 사용하여 현재 디렉터리에 다운로드하고 이름을 1.mp3로 지정합니다:<?php $host = '10.0.0.42'; $uname = 'uftp'; $upwd = 'uftp'; // 进行ftp连接 if(empty($port)){ $f_conn = ftp_connect($host); }else{ $f_conn = ftp_connect($host, $port); } if(!$f_conn){ echo "ftp connect fail\n"; exit(1); } // 进行ftp登录 if(!ftp_login($f_conn, $uname, $upwd)){ echo "ftp login fail\n"; exit(1); } // 进行ftp下载 if(!ftp_get($f_conn, './1.mp3', ftp_pwd($f_conn).'/'.date('Ymd').'/bbb.mp3', FTP_BINARY)){ echo "ftp download fail\n"; exit(1); }else{ echo "ftp download success\n"; exit(0); }
위 내용은 PHP가 FTP를 사용하여 파일을 업로드하고 다운로드하는 방법의 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!