In diesem Artikel werden hauptsächlich die Datei-Upload- und Download-Funktionen von PHP mit FTP ausführlich vorgestellt. Interessierte Freunde können sich auf
FTP-Datei-Upload
2. Führen Sie den Vorgang ftp_connect aus, um eine Verbindung zum FTP-Server herzustellen (Sie müssen darauf achten, ob der Portparameter festgelegt ist);
3. Führen Sie den Vorgang „ftp_login“ aus und verwenden Sie den FTP-Benutzernamen und das Kennwort, um sich anzumelden.
4. Wenn Sie nur Dateien hochladen müssen und keine weiteren Anforderungen bestehen, können Sie den Vorgang „ftp_put“ ausführen Vorgang zum Hochladen von Dateien hier; wenn Sie die hochgeladenen Dateien entsprechend dem Verzeichnis speichern müssen, fahren Sie unten fort.
5. Verwenden Sie ftp_nlist, um das Verzeichnis und den Dateinamen im angegebenen FTP-Verzeichnis abzurufen Wenn nicht, ist ftp_mkdir erforderlich, um das Verzeichnis zu erstellen.
7. Führen Sie den Vorgang ftp_put aus, um die FTP-Verbindung zu schließen .
Um die Anforderung zum Hochladen von Dateien entsprechend dem Datumsformatverzeichnis in FTP zu erfüllen, führen Sie eine einfache Codeimplementierung durch:
<?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); }
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-Datei-Download
Im Vergleich zum Datei-Upload ist es wirklich selten, PHP zum Herunterladen von FTP-Dateien zu verwenden, aber da diese Funktion verfügbar ist, bedeutet dies, dass es immer eine gibt Es besteht die Möglichkeit, dass jemand es verwendet. Machen Sie also auch ein einfaches Beispiel.
Verwenden Sie die oben hochgeladene bbb.mp3-Datei als Download-Ziel. Laden Sie sie in das aktuelle Verzeichnis herunter und nennen Sie sie 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-Betriebs-FTP-Klasse (Hochladen, Herunterladen, Verschieben, Erstellen usw.),
phpftp_PHP-Tutorial
PHP betreibt FTP-Klassen (Hochladen, Herunterladen, Verschieben, Erstellen usw.),
Python wird basierend auf dem FTP-Modul implementiert
Das obige ist der detaillierte Inhalt vonWie man FTP verwendet, um Datei-Upload- und Download-Funktionen in PHP zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!