首頁 >後端開發 >php教程 >如何將 FTP 檔案檢索到 PHP 變數?

如何將 FTP 檔案檢索到 PHP 變數?

Susan Sarandon
Susan Sarandon原創
2024-10-26 01:13:27420瀏覽

How do you Retrieve FTP Files into PHP Variables?

FTP 檔案擷取PHP 變數:詳細指南

使用遠端檔案時,通常需要將其內容讀取到變數中進一步加工。 PHP 提供了一系列專門為 FTP 伺服器完成此任務的函數。

使用 file_get_contents()**

file_get_contents() 的方法函數是從 FTP 伺服器取得檔案內容的簡單解決方案。其語法為:

<code class="php">$contents = file_get_contents('ftp://username:password@hostname/path/to/file');</code>

如果成功檢索內容,它將儲存在 $contents 變數中。此方法適用於大多數用例。但是,如果您需要對傳輸過程進行更多控製或由於 URL 包裝器設定而遇到問題,可以使用替代方法。

使用 ftp_fget()**

ftp_fget() 函數提供對檔案擷取的更精細控制。它涉及以下步驟:

  1. 使用 ftp_connect()ftp_login() 建立 FTP 連線
  2. 使用 ftp_pasv() 為某些 FTP 伺服器啟用被動模式
  3. 使用 fopen 在記憶體中開啟暫存檔案指標 () 儲存檔案內容。
  4. 使用ftp_fget() 啟動檔案傳輸,指定遠端檔案路徑、傳輸模式和偏移(如果需要) .
  5. 使用fstat()fseek()fread()讀取到變數中>.
程式碼片段:

此方法為進階FTP 檔案處理方案提供了更大的彈性。
<code class="php">$conn_id = ftp_connect('hostname');
ftp_login($conn_id, 'username', 'password');
ftp_pasv($conn_id, true);

$h = fopen('php://temp', 'r+');
ftp_fget($conn_id, $h, '/path/to/file', FTP_BINARY, 0);
$fstats = fstat($h);
fseek($h, 0);
$contents = fread($h, $fstats['size']);

fclose($h);
ftp_close($conn_id);</code>

以上是如何將 FTP 檔案檢索到 PHP 變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn