Maison >développement back-end >tutoriel php >Comment utiliser FTP en PHP pour implémenter les fonctions de téléchargement et de téléchargement de fichiers
Cet article présente principalement en détail les fonctions de téléchargement et de téléchargement de fichiers de PHP à l'aide de FTP. Il a une certaine valeur de référence. Les amis intéressés peuvent se référer à
téléchargement de fichiers FTP
<.>
2. Effectuez l'opération ftp_connect pour vous connecter au serveur ftp (vous devez faire attention à ce que le paramètre de port soit défini) ;
3. Effectuez l'opération ftp_login et utilisez le nom d'utilisateur et le mot de passe ftp pour vous connecter ;
4. La distinction commence ici. Si vous avez seulement besoin de télécharger des fichiers et qu'il n'y a aucune autre exigence, vous pouvez effectuer le ftp_put. opération de téléchargement de fichiers ici ; si Si vous devez stocker les fichiers téléchargés en fonction du répertoire, continuez ci-dessous
5. Utilisez ftp_nlist pour obtenir le répertoire et le nom du fichier dans le répertoire ftp donné, vérifiez si le répertoire requis existe ; , sinon, ftp_mkdir est requis pour créer le répertoire ;
6. Basculez vers ftp_chdir dans le répertoire cible ;
7. Effectuez l'opération ftp_put pour télécharger les fichiers ;
8. .
<?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); }Imprimer :
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 successVous pouvez voir que l'opération d'impression est réussie. Allez maintenant dans le répertoire du serveur ftp. peut voir les fichiers téléchargés.
Téléchargement de fichiers FTP
Par rapport au téléchargement de fichiers, il est vraiment rare d'utiliser php pour télécharger des fichiers FTP, mais comme cette fonction est disponible, cela signifie qu'il y a toujours un Il y a de fortes chances que quelqu'un l'utilise, alors faites également un exemple simple. Utilisez le fichier bbb.mp3 téléchargé ci-dessus comme cible de téléchargement. Téléchargez-le dans le répertoire actuel et nommez-le 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); }
Recommandations associées :
Classe FTP d'opération PHP (upload, téléchargement, déplacement, création, etc.), phpftpTutoriel _PHP
PHP exploite des classes FTP (télécharger, télécharger, déplacer, créer, etc.), phpftp
Python est implémenté sur la base de Module FTPftpTéléchargement de fichiers
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!