如何在不使用本機儲存的情況下將檔案從 FTP 伺服器直接下載到瀏覽器?

Mary-Kate Olsen
發布: 2024-11-04 15:01:01
原創
717 人瀏覽過

How can I download files from an FTP server directly to a browser without using local storage?

將檔案從FTP 伺服器下載到沒有本地儲存的瀏覽器

使用PHP 腳本從FTP 伺服器下載檔案時,通常的做法是儲存在將文件傳送到使用者的瀏覽器之前,它們會暫時儲存在Web 伺服器上。但是,這種方法效率較低。

取得檔案內容而不儲存

要直接將檔案傳送到瀏覽器而不儲存到磁碟,只需刪除輸出緩衝即可函數(ob_start () 和ob_get_contents())。此程式碼將檔案直接傳送到輸出流:

<code class="php">ftp_get($conn_id, "php://output", $file, FTP_BINARY);</code>
登入後複製

新增Content-Length 標頭

要包含Content-Length 標頭,請查詢檔案大小下載前使用ftp_size():

<code class="php">$file_path = "remote/path/file.zip";
$size = ftp_size($conn_id, $file_path);</code>
登入後複製

然後,設置適當的標頭並下載文件:

<code class="php">header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=" . basename($file_path));
header("Content-Length: $size");

ftp_get($conn_id, "php://output", $file_path, FTP_BINARY);</code>
登入後複製

其他注意事項

請記住處理錯誤並在回應標頭中提供正確的文件訊息,包括用於下載的檔案名稱。有關全面的指南,請參閱連結的資源。透過使用這些技術,您可以有效地將檔案從 FTP 伺服器直接下載到瀏覽器,而不需要暫時儲存。

以上是如何在不使用本機儲存的情況下將檔案從 FTP 伺服器直接下載到瀏覽器?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板