php實現ftp上傳的類與調用樣本

來源:互聯網
上載者:User
仿照網上的例子寫的一個ftp上傳類,很簡單,適合新手朋友參考。

1、檔案上傳類 ftp.class.php

ftpUrl=$ftpUrl; } if($ftpUser){     $this->ftpUser=$ftpUser; } if($ftpPass){     $this->ftpPass=$ftpPass; } if($ftpUrl){     $this->ftpDir=$ftpDir; } if ($this->ftpR = ftp_connect($this->ftpUrl, 21)) {     if (ftp_login($this->ftpR, $this->ftpUser, $this->ftpPass)) {  if (!empty($this->ftpDir)) {      ftp_chdir($this->ftpR, $this->ftpDir);  }  ftp_pasv($this->ftpR, true);//R 啟用被動模式;  $status = 1;     }     else {  $status = 3;     } } else {     $status = 2; }    }    //R 切換目錄;    function cd($dir) {       return ftp_chdir($this->ftpR, $dir);    }    //R 返回當前路勁;    function pwd() {       return ftp_pwd($this->ftpR);    }    //R 建立目錄    function mkdir($directory) {       return ftp_mkdir($this->ftpR,$directory);    }    //R 刪除目錄    function rmdir($directory) {       return ftp_rmdir($this->ftpR,$directory);    }    //R 上傳檔案;    function put($localFile, $remoteFile = '') {       if ($remoteFile == '') {  $remoteFile = end(explode('/', $localFile));       }       $res = ftp_nb_put($this->ftpR, $remoteFile, $localFile, FTP_BINARY);       while ($res == FTP_MOREDATA) {  $res = ftp_nb_continue($this->ftpR);       }       if ($res == FTP_FINISHED) {  return true;       } elseif ($res == FTP_FAILED) {  return false;       }    }    //R 下載檔案;    function get($remoteFile, $localFile = '') {       if ($localFile == '') {  $localFile = end(explode('/', $remoteFile));       }       if (ftp_get($this->ftpR, $localFile, $remoteFile, FTP_BINARY)) {  $flag = true;       } else {  $flag = false;       }       return $flag;    }    //R 檔案大小;    function size($file) {       return ftp_size($this->ftpR, $file);    }    //R 檔案是否存在;    function isFile($file) {       if ($this->size($file) >= 0) {  return true;       } else {  return false;       }    }    //R 檔案時間    function fileTime($file) {       return ftp_mdtm($this->ftpR, $file);    }    //R 刪除檔案;    function unlink($file) {       return ftp_delete($this->ftpR, $file);    }    function nlist($dir = '/service/resource/') {       return ftp_nlist($this->ftpR, $dir);    }    //R 關閉串連;    function bye() {       return ftp_close($this->ftpR);    }}?>

2、調用樣本 uplaod.php

put($localfile, $remotefile); //FTP上傳原圖到遠程伺服器 $ftp->bye(); //關閉FTP串連 unlink($workDir."/".$img_name) or die("Cannot delete uploaded file from working directory -- manual deletion recommended"); if(!$ftpput){     return false;   } else{     return $img_path.'/'.$img_name; }?>
  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.