php ftp怎么实现删除文件

  • 来源:网络
  • 更新日期:2020-08-13

摘要:php ftp删除文件的实现方法:首先连接ftp;然后通过“ftp_get”函数下载文件;接着使用“ftp_delete($con,"eee.doc");”方法直接删除文件即可。推荐:《PHP视频教程》php操作ftp上

php ftp删除文件的实现方法:首先连接ftp;然后通过“ftp_get”函数下载文件;接着使用“ftp_delete($con,"eee.doc");”方法直接删除文件即可。

推荐:《PHP视频教程》

php操作ftp上传文件、创建目录、删除文件、删除目录、下载文件到本地

<?php  
  
$host = 'xxx';  
$user = 'user';  
$pwd = '123';  
$con = ftp_connect($host);  
$login = ftp_login($con,$user,$pwd);  
if($login){  
    echo "ftp链接成功!<br/>";  
    }  
  
$file1="baaa.doc";    
echo ftp_put($con,$file1,"2222/aaa.doc",FTP_BINARY);//file1shi ftp的路径   第二个参数是当前服务器上的路径  2222/aaa.doc是本地的路径  
echo  "<br>";  
$file2="测试aaa.doc"; //中文也是好使的  
echo ftp_put($con,$file2,"2222/测试.doc",FTP_BINARY);//file1shi ftp的路径   第二个参数是当前服务器上的路径  2222/aaa.doc是本地的路径  
echo  "<br>";  
    $path="444/555";//创建目录只能一层一层的创建  
    $dir=explode("/", $path);   
    $path="";   
   for ($i=0;$i<count($dir);$i++)   
   {   
       $path.="/".$dir[$i];   
       echo $path."<br>";   
       if(!@ftp_chdir($con,$path)){   
         @ftp_chdir($con,"/");   
         if(!@ftp_mkdir($con,$path)){   
          $ret=false;   
          break;   
         }   
       }   
   }   
  
   ftp_put($con,"eee.doc","2222/aaa.doc",FTP_BINARY);//file1shi ftp的路径   第二个参数是当前服务器上的路径  此时放到了555下面  
   // echo ftp_pwd($con)."<br>";//当前目录名  
   //exit;  
    @ftp_chdir($con,"../");   
  ftp_put($con,$file1,"2222/aaa.doc",FTP_BINARY); //附件放到了444里面    FTP_ASCII  
  //把当前目录切换为父目录  
    ftp_cdup($con);  //回到了上一级目录  默认的是share下  
    ftp_put($con,"ccc.doc","2222/aaa.doc",FTP_BINARY); //附件放到了444里面   
     @ftp_chdir($con,"444"); //进入到了444目录  
     //文件下载  
    ftp_get($con,"2222/aaa1.doc", "baaa.doc", FTP_BINARY);//第一个是本地   第二个是ftp的路径文件  
     @ftp_chdir($con,"555");//进入555  
     ftp_delete($con,"eee.doc"); //删除文件是好使的  
     ftp_cdup($con);   
     ftp_rmdir($con,"555");  //删除目录  
    echo ftp_pwd($con)."<br>";//当前目录名  
    //http://www.w3school.com.cn/php/php_ref_ftp.asp  
  
  ftp_close($con);  
  
  
  
?>  
</body>  
</html>

ftp效率不是很高,推荐使用curl

function file_upload($ftpIp,$ftpUser,$ftpPwd,$path,$fileSavePath){
  $curlobj = curl_init();//初始化
  //传入ftp的目标文件,如'ftp://192.168.3.1/test/1.jpg'
  curl_setopt($curlobj,CURLOPT_URL,"ftp://".$ftpIp."/".$path);
  curl_setopt($curlobj,CURLOPT_HEADER,0);//不输出header
  curl_setopt($curlobj,CURLOPT_RETURNTRANSFER,0);
  //time out after 300s 
  curl_setopt($curlobj,CURLOPT_TIMEOUT,2000);//超时时间
  //通过这个函数设置ftp的用户名和密码,没设置就不需要! 
  curl_setopt($curlobj,CURLOPT_USERPWD,$ftpUser.':'.$ftpPwd);
 
  $outfile = fopen($fileSavePath,'w+'); //保存到本地文件的文件名 
  curl_setopt($curlobj,CURLOPT_FILE,$outfile);
 
  $rtn = curl_exec($curlobj);
  if(curl_errno($curlobj)){
    writeLog('Curl error: ' . curl_error($curlobj));
  }
  fclose($outfile);
  curl_close($curlobj);
   if($rtn == 1){
    return true;
   }else{
    unlink($fileSavePath);//如果下载失败,但是本地open了这个文件,所以要删除
    return false;
   }
 
}