從FTP獲取自動下載文件的PHP類
/** * 從FTP獲取自動下載文件的PHP類 * @author yukar ( http://yukar.iteye.com ) */ class FtpClass{ private $ftpObj; private $ftpHost = "****"; // 服務器地址 private $ftpPort = ****; // 服務器端口 private $ftpUser = "****"; // 用戶名 private $ftpPassword = "****"; // 口令 private $localBase = '/your/save/path'; //你存放的目錄 function __construct($initData=array()){ if (isset($initData['ftpHost']) && $initData['ftpHost']){ $this->ftpHost = $initData['ftpHost']; } if (isset($initData['ftpPort']) && $initData['ftpPort']){ $this->ftpPort = $initData['ftpPort']; } if (isset($initData['ftpUser']) && $initData['ftpUser']){ $this->ftpUser = $initData['ftpUser']; } if (isset($initData['ftpPassword']) && $initData['ftpPassword']){ $this->ftpPassword = $initData['ftpPassword']; } if (isset($initData['localBase']) && $initData['localBase']){ $this->localBase = $initData['localBase']; } } function ftp_connect(){ if(!$this->ftpObj){ $this->ftpObj = ftp_connect($this->ftpHost,$this->ftpPort); // 連接ftp服務器 if($this->ftpObj) { if(ftp_login($this->ftpObj, $this->ftpUser, $this->ftpPassword)) { // 登錄 return true; }else{ return false; } }else { return false; } } } function ftp_download_file($fileName) { //獲取FTP路徑 $ftpPath = dirname($fileName) . "/"; //獲取文件名 $selectFile = basename($fileName); // 進入指定路徑 if(@ftp_chdir($this->ftpObj,$ftpPath)) { //$localBase 如果不存在,新創建目錄,務必確保 有創建權限 if(!is_dir($this->localBase)){ mkdir($this->localBase, 0777); } $toFile = $this->localBase.$fileName; if(ftp_get($this->ftpObj, $toFile, $selectFile, FTP_BINARY)) { //下載指定的FTP文件到指定的本地文件 return true; }else { return false; } }else { return false; } } function ftp_quit(){ if($this->ftpObj){ ftp_quit($this->ftpObj); } } }調用就更簡單了
$ftpObj = new FtpClass(); $ftpObj->ftp_connect(); $filename = '/config/config.sample.php'; $ftpObj->ftp_download_file($filename); $ftpObj->ftp_quit(); exit();
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!