国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP通過FTP上傳文件詳解介紹

2024-09-04 11:45:07
字體:
來源:轉載
供稿:網友

本文章來總結幾個利用php中的ftp功能來實現通過FTP上傳文件,有需要學習的朋友可參考參考.

ftp_get() 函數從 FTP 服務器上下載一個文件,若成功則返回 true,失敗則返回 false.

語法:ftp_get(ftp_connection,local,remote,mode,resume)

ftp_connect() 函數建立一個新的 FTP 連接,若成功,則返回一個連接標識,否則返回 false.

語法:ftp_connect(host,port,timeout)

ftp_login() 函數登錄 FTP 服務器,若成功則返回 true,失敗則返回 false 并發出一個警告.

語法:ftp_login(ftp_connection,username,password)

三個函數己經介紹好了,現在開始了.

例1,代碼如下:

  1. $ftp_server = "*.*.*.*"
  2. $ftp_user = "lu"
  3. $ftp_pass = "love you"
  4. // set up a connection or die 
  5. $conn_id = ftp_connect($ftp_serveror die("Couldn't connect to $ftp_server"); 
  6. $login_result = ftp_login($conn_id$ftp_user$ftp_pass); 
  7. if ((!$conn_id) || (!$login_result)) {  
  8.         echo "FTP connection has failed!"
  9.         echo "Attempted to connect to $ftp_server for user $ftp_user_name";  
  10.         exit;  
  11.     } else { 
  12.         echo "Connected to $ftp_server, for user $ftp_user_name"
  13.     } 
  14. // try to login 
  15.  $filename=date('Ymd').".xml"
  16.  $source_file="/usr/local/IVR/sendwireless/xml/data/".$filename;  //源地址 
  17.  echo $source_file
  18.  $destination_file="/ITC/admin/logstat/ftplog/".$filename;  //目標地址 
  19.  $upload = ftp_put($conn_id$destination_file$source_file, FTP_BINARY) or die("Couldn't connect to $ftp_server");  
  20.  ftp_quit($conn_id); 
  21.  if (!$upload) {  
  22.         echo "FTP upload has failed!"
  23.     } else { 
  24.         echo "Uploaded $source_file to $ftp_server as $destination_file"
  25.     } 
  26. ftp_close($conn_id); 

上傳時先傳至本地對文件作必要的修改,如加水印等等操作,然后再通過FTP傳至遠程服務器.

例2,代碼如下:

  1. //上傳圖片 
  2. if ($_FILES['pic']['name']) 
  3. $file_path='/opt/www/img/'
  4. $pic = upload('pic'$filename'jpg|jpeg|gif|bmp|png'$file_path); 
  5. if(!$pic
  6. echo "圖片上傳失敗!"
  7. exit
  8. require_once(ROOT_PATH . 'Lib/Class/Ftp.class.php'); 
  9. $ftp = new ftp("127.0.0.1","gamezeroftp","123456","/opt/www"); 
  10. $localfile='/opt/www/img/'.$pic
  11. $remotefile='/opt/www/gamepics/'.$pic
  12. $ftpput = $ftp->put($localfile$remotefile); //FTP上傳原圖到遠程服務器 
  13. if(!$ftpput){ 
  14. echo "上傳圖片到遠程服務器失敗!"
  15. $ftp->bye(); //關閉FTP連接 

附上FTP操作類,代碼如下:

  1. ftpUrl=$ftpUrl
  2. if($ftpUser){ 
  3. $this->ftpUser=$ftpUser
  4. if($ftpPass){ 
  5. $this->ftpPass=$ftpPass
  6. if($ftpUrl){ 
  7. $this->ftpDir=$ftpDir
  8. if ($this->ftpR = ftp_connect($this->ftpUrl, 21)) { 
  9. if (ftp_login($this->ftpR, $this->ftpUser, $this->ftpPass)) { 
  10. if (!emptyempty($this->ftpDir)) { 
  11. ftp_chdir($this->ftpR, $this->ftpDir); 
  12. ftp_pasv($this->ftpR, true);//R 啟用被動模式; 
  13. $status = 1; 
  14. else { 
  15. $status = 3; 
  16. else { 
  17. $status = 2; 
  18. //R 切換目錄; 
  19. function cd($dir) { 
  20. return ftp_chdir($this->ftpR, $dir); 
  21. //R 返回當前路勁; 
  22. function pwd() { 
  23. return ftp_pwd($this->ftpR); 
  24. //R 創建目錄 
  25. function mkdir($directory) { 
  26. return ftp_mkdir($this->ftpR,$directory); 
  27. //R 刪除目錄 
  28. function rmdir($directory) { 
  29. return ftp_rmdir($this->ftpR,$directory); 
  30. //R 上傳文件; 
  31. function put($localFile$remoteFile = '') { 
  32. if ($remoteFile == '') { 
  33. $remoteFile = end(explode('/'$localFile)); 
  34. $res = ftp_nb_put($this->ftpR, $remoteFile$localFile, FTP_BINARY); 
  35. while ($res == FTP_MOREDATA) { 
  36. $res = ftp_nb_continue($this->ftpR); 
  37. if ($res == FTP_FINISHED) { 
  38. return true; 
  39. elseif ($res == FTP_FAILED) { 
  40. return false; 
  41. //R 下載文件; 
  42. function get($remoteFile$localFile = '') { 
  43. if ($localFile == '') { 
  44. $localFile = end(explode('/'$remoteFile)); 
  45. if (ftp_get($this->ftpR, $localFile$remoteFile, FTP_BINARY)) { 
  46. $flag = true; 
  47. else { 
  48. $flag = false; 
  49. return $flag
  50. //R 文件大小; 
  51. function size($file) { 
  52. return ftp_size($this->ftpR, $file); 
  53. //R 文件是否存在; 
  54. function isFile($file) { 
  55. if ($this->size($file) >= 0) { 
  56. return true; 
  57. else { 
  58. return false; 
  59. //R 文件時間 
  60. function fileTime($file) { 
  61. return ftp_mdtm($this->ftpR, $file); 
  62. //R 刪除文件; 
  63. function unlink($file) { 
  64. return ftp_delete($this->ftpR, $file); 
  65. }//開源軟件:Vevb.com 
  66. function nlist($dir = '/service/resource/') { 
  67. return ftp_nlist($this->ftpR, $dir); 
  68. //R 關閉連接; 
  69. function bye() { 
  70. return ftp_close($this->ftpR); 
  71. }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 禄劝| 甘泉县| 墨竹工卡县| 斗六市| 鄂州市| 内黄县| 岱山县| 天全县| 东台市| 石阡县| 东丰县| 永和县| 阜宁县| 象山县| 兴文县| 洛扎县| 山阴县| 加查县| 淮滨县| 阿合奇县| 临朐县| 高台县| 水富县| 图木舒克市| 土默特左旗| 白河县| 榕江县| 女性| 高安市| 清流县| 慈利县| 乐清市| 宜阳县| 定西市| 苏尼特左旗| 临高县| 琼海市| 阜康市| 定州市| 遂溪县| 海盐县|