包含php實現ftp上傳下載的詞條

本文目錄一覽:

如何使用php中ftp函數上傳文件以及解決上傳文件失敗的方法

一、 ftp上傳圖片參數說明。

1 $source:本機圖片完整的路徑。(/a/b/c.jpg)

2 $des :上傳目標linux主機完整的路徑。

3 $ftp_server:ftp地址

4 $ftp_user_name:ftp用戶名

5 $ftp_user_pass: ftp密碼

6 $port:端口

二、如何使用php中ftp函數上傳文件的方法

例如:

本地地址為:/a/b/c.jpg

目標地址為:/d/a/b/c.jpg

2.1、linux主機上傳linux主機。

01 function ftpSendFile($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)

02 {

03 // 此步驟是在於上傳目錄與本機的目錄不一致轉換使用

04 $des = “/d” . $des;

05 $conn_id = ftp_connect($ftp_server, $port) or die(“Couldn’t connect to $ftp_server”);

06 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

07 ftp_pasv($conn_id, TRUE);

08 $ftp_folder = dirname($des);

09 $dir = explode(“/”, $ftp_folder);

10 $path = “”;

11 for ($i = 0; $i count($dir); $i++) {

12 $path .= “/” . $dir[$i];

13 if (!ftp_chdir($conn_id, $path)) {

14 $result = ftp_mkdir($conn_id, $path);

15 }

16 }

17 if (ftp_put($conn_id, $des, $source, FTP_BINARY)) {

18 return 1;

19 } else {

20 return 0;

21 }

22 ftp_close($conn_id);

23 }

2.2、windows主機上傳linux主機。

01 function sendPic($source,$des,$ftp_server,$ftp_user_name,$ftp_user_pass,$port)

02 {

03 $des = “/d” . $des;

04 $conn_id = ftp_connect($ftp_server, $port) or die(“Couldn’t connect to $ftp_server”);

05 $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

06 ftp_pasv($conn_id, TRUE);

07 $ftp_folder = dirname(str_ireplace(‘\\’, ‘/’, $des));

08 $dir = explode(“/”, $ftp_folder);

09 $path = “”;

10 for ($i = 0; $i count($dir); $i++) {

11 $path .= “/” . $dir[$i];

12 if (!ftp_chdir($conn_id, $path)) {

13 $result = ftp_mkdir($conn_id, $path);

14 }

15 }

16 if (ftp_put($conn_id, str_ireplace(‘\\’, ‘/’, $des), $source, FTP_BINARY)) {

17 return 1;

18 } else {

19 return 0;

20 }

21 ftp_close($conn_id);

22 }

上面的兩種使用php中ftp函數上傳文件的方法基本可以滿足正常的使用。

北大青鳥java培訓:用PHP控制FTP文件上傳?

利用PHP,你總是可以有多種方式來完成某個特定的任務。

我們就拿文件上傳舉個例子。

當然了,你可以按照傳統的方式來使用HTTP文件上傳,把文件直接傳輸到Web服務器磁盤上。

海南電腦培訓認為你還可以用更加奇異的方式上傳,用FTP協議兩步就完成上傳:從你的本地硬盤到Web服務器,然後再到FTP服務器。

PHP在本機同時支持FTP和HTTP上傳,所以你可以根據自己應用程序的設計需要進行最佳的選擇。

使用PHP的FTP函數進行文件傳輸幾乎與使用傳統的FTP客戶端相同——你會看到連函數的名字都和標準的FTP命令類似。

關於HTTP文件上傳的文章已經多得滿天飛了,這就是為什麼本文有必要把注意力放在基於FTP的文件上傳上了(但是在後面給出的例子中,兩種方式你都會看到)。

要注意的是,本教程假設你已經安裝好了PHP/Apache,而且HTTP文件上傳和FTP的函數都已經激活了。

第一步:確信你擁有連接/上傳到FTP服務器的權限PHP的FTP函數需要客戶端-服務器連接,所以你需要在進行文件上傳之前登錄到目標服務器上。

你的第一項任務是確信你已經擁有了完成這項任務的信任書。

這一步可能看起來是理所當然的,但是你會驚奇地發現有多少開發人員忘了這麼做,結果後來浪費大量的時間來解決因此而出現的問題。

用php向ftp上傳文件

參考代碼如下:

$ftp_server = “根據實際IP設置”;

$ftp_user = “wodota_ting”;

$ftp_pass = “wodotating!@#”;

$conn_id = ftp_connect($ftp_server) or die(“Couldn’t connect to $ftp_server”);

$login_result = ftp_login($conn_id, $ftp_user, $ftp_pass);

if ((!$conn_id) || (!$login_result)) {

echo “FTP connection has failed!”;

echo “Attempted to connect to $ftp_server for user $ftp_user_name”;

exit;

} else {

echo “Connected to $ftp_server, for user $ftp_user_name”;

}

$source_file=$this-filepath.$this-newFileName; //源地址

echo $source_file;

$destination_file=”/testxiao/”.$this-newFileName; //目標地址

$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY) or die(“Couldn’t connect to $ftp_server”);

//ftp_close($conn_id);

if (!$upload) {

echo “FTP upload has failed!”;

} else {

echo “Uploaded $source_file to $ftp_server as $destination_file”;

}

ftp_close($conn_id);

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/287275.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-23 13:07
下一篇 2024-12-23 13:07

相關推薦

  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • 使用PHP foreach遍歷有相同屬性的值

    本篇文章將介紹如何使用PHP foreach遍歷具有相同屬性的值,並給出相應的代碼示例。 一、基礎概念 在講解如何使用PHP foreach遍歷有相同屬性的值之前,我們需要先了解幾…

    編程 2025-04-28
  • PHP獲取301跳轉後的地址

    本文將為大家介紹如何使用PHP獲取301跳轉後的地址。301重定向是什麼呢?當我們訪問一個網頁A,但是它已經被遷移到了另一個地址B,此時若服務器端做了301重定向,那麼你的瀏覽器在…

    編程 2025-04-27
  • PHP登錄頁面代碼實現

    本文將從多個方面詳細闡述如何使用PHP編寫一個簡單的登錄頁面。 1. PHP登錄頁面基本架構 在PHP登錄頁面中,需要包含HTML表單,用戶在表單中輸入賬號密碼等信息,提交表單後服…

    編程 2025-04-27
  • Python上傳ftp文件用法介紹

    本文將從多個方面詳細闡述Python上傳ftp文件的方法和注意事項,幫助讀者快速掌握如何使用Python上傳ftp文件。 一、安裝ftplib庫 首先,在Python中使用ftp上…

    編程 2025-04-27
  • PHP與Python的比較

    本文將會對PHP與Python進行比較和對比分析,包括語法特性、優缺點等方面。幫助讀者更好地理解和使用這兩種語言。 一、語法特性 PHP語法特性: <?php // 簡單的P…

    編程 2025-04-27
  • FTP Linux:在Linux中使用FTP的完整指南

    一、安裝FTP服務器 1、使用yum命令安裝vsftpd(一個流行的FTP服務器程序)。 $ sudo yum install vsftpd 2、打開vsftpd主配置文件。 $ …

    編程 2025-04-25
  • PHP版本管理工具phpenv詳解

    在PHP項目開發過程中,我們可能需要用到不同版本的PHP環境來試驗不同的功能或避免不同版本的兼容性問題。或者我們需要在同一台服務器上同時運行多個不同版本的PHP語言。但是每次手動安…

    編程 2025-04-24
  • 全能FTP開發工程師分享:FTP功能介紹與實現

    一、FTP基礎知識 FTP(File Transfer Protocol)是一種傳輸文件的協議,基於客戶機/服務器模式,通過可靠的TCP連接進行數據傳輸。FTP包括兩個部分:FTP…

    編程 2025-04-24

發表回復

登錄後才能評論