PHP操作FTP 用法

2021-05-24 13:24:35 字數 2032 閱讀 3269

建立乙個php的ftp聯接必須遵守以下基本步驟:開啟乙個聯接 - 發出認證資訊 - 使用php函式操縱目錄和傳輸檔案。

以下具體實現:

// 聯接ftp伺服器

$conn = ftp_connect(ftp.server.com);

// 使用username和password登入

ftp_login($conn, 「john」, 「doe」);

// 獲取遠端系統型別

ftp_systype($conn);

// 列示檔案

$filelist = ftp_nlist($conn, 「.」);

ftp_get($conn, 「data.zip」, 「data.zip」, ftp_binary);

// 關閉聯接

ftp_quit($conn);

//初結化乙個ftp聯接,php提供了ftp_connect()這個函式,它使用主機名稱和埠作為引數。在上面的例子裡,主機名字為「ftp.server.com」;如果埠沒指定,php將會使用「21」作為預設埠來建立聯接。

//聯接成功後ftp_connect()傳回乙個handle控制代碼;這個handle將被以後使用的ftp函式使用。

$conn = ftp_connect(ftp.server.com);

//一旦建立聯接,使用ftp_login()傳送乙個使用者名稱和使用者密碼。你可以看到,這個函式ftp_login()使用了ftp_connect()函式傳來的handle,以確定使用者名稱和密碼能被提交到正確的伺服器。

ftp_login($conn, 「john」, 「doe」);

// close connection

ftp_quit($conn);

//登入了ftp伺服器,php提供了一些函式,它們能獲取一些關於系統和檔案以及目錄的資訊。

ftp_pwd()

//獲取當前所在的目錄

$here = ftp_pwd($conn);

//獲取伺服器端系統資訊ftp_systype()

$server_os = ftp_systype($conn);

//被動模式(pasv)的開關,開啟或關閉pasv(1表示開)

ftp_pasv($conn, 1);

//進入目錄中用ftp_chdir()函式,它接受乙個目錄名作為引數。

ftp_chdir($conn, 「public_html」);

//回到所在的目錄父目錄用ftp_cdup()實現

ftp_cdup($conn);

//建立或移動乙個目錄,這要使用ftp_mkdir()和ftp_rmdir()函式;注意:ftp_mkdir()建立成功的話,就會返回新建立的目錄名。

ftp_mkdir($conn, 「test」);

ftp_rmdir($conn, 「test」);

//上傳檔案,ftp_put()函式能很好的勝任,它需要你指定乙個本地檔名,上傳後的檔名以及傳輸的型別。比方說:如果你想上傳「abc.txt」這個檔案,上傳後命名為「xyz.txt」,命令應該是這樣:

ftp_put($conn, 「xyz.txt」, 「abc.txt」, ftp_ascii);

ftp_get($conn, 「hers.zip」, 「his.zip」, ftp_binary);

//php提供兩種方法:一種是簡單列示檔名和目錄,另一種就是詳細的列示檔案的大小,許可權,創立時間等資訊。

//第一種使用ftp_nlist()函式,第二種用ftp_rawlist().兩種函式都需要乙個目錄名做為引數,都返回目錄列做為乙個陣列,陣列的每乙個元素相當於列表的一行。

$filelist = ftp_nlist($conn, 「.」);

//函式ftp_size(),它返回你所指定的檔案的大小,使用bites作為單位。要指出的是,如果它返回的是 「-1」的話,意味著這是乙個目錄

$filelist = ftp_size($conn, 「data.zip」);

FTP檔案操作

using system using system.collections.generic using system.linq using system.text namespace file 獲取伺服器ip public static string serverip 獲取埠 public stat...

一起學習PHP中的FTP操作

除了 上傳之外,在某些業務場景中,比如在雲服務還不是非常流行的年代,往往我們會把 大檔案這些素材存放到一台單獨的有著大容量硬碟的伺服器上。這時,在後台上傳這些檔案的時候,我們就需要使用 ftp 的功能將業務伺服器上傳的檔案再通過 ftp 服務傳輸到檔案伺服器中,這就是在業務環境下 ftp 最典型的應...

linux中FTP常見用法

今天介面測試中使用到了ftp命令,很久沒用這個了,做下記錄 1 檢視ftp服務的狀態 命令 service vsftpd status ps 提示vsftpd command not found,修改path的環境變數就可以了 2 啟動ftp 命令 service vsftpd start 3 檢視...