首頁 >後端開發 >php教程 >如何使用PHP有效率地向使用者傳送文件?

如何使用PHP有效率地向使用者傳送文件?

Susan Sarandon
Susan Sarandon原創
2024-12-01 22:55:12890瀏覽

How Can I Efficiently Send Files to Users Using PHP?

使用 PHP 向使用者發送檔案

當使用者從 PHP 腳本請求檔案時,有效地傳遞檔案變得至關重要。以下是如何有效地做到這一點:

使用 readfile()

PHP 函數 readfile() 提供了一種向使用者傳送檔案的簡單方法。它從伺服器讀取檔案並將其輸出到瀏覽器。

語法:

readfile($file);

示例:

$file = 'myfile.pdf';
if (file_exists($file)) {
    readfile($file);
    exit;
}

配置標頭

確保文件交付正確地,配置適當的HTTP 標頭非常重要。預設情況下,readfile() 以內聯方式傳送文件,而不是提示瀏覽器下載它。

header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));

這些標頭指定檔案的描述、類型、設定(附件或內聯)、傳輸編碼等正確下載檔案的關鍵資訊。

透過將 readfile() 與適當的標頭配置結合,您可以根據使用者的需求有效地將 PDF 或其他檔案傳送給使用者請求。

以上是如何使用PHP有效率地向使用者傳送文件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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