首頁  >  文章  >  後端開發  >  php中readfile() 函數設定檔案大小的方法

php中readfile() 函數設定檔案大小的方法

墨辰丷
墨辰丷原創
2018-05-18 15:09:131574瀏覽

本文透過實例程式碼跟大家講解了php使用readfile() 函數設定檔案大小大小的方法,需要的的朋友參考下吧

使用PHP ZipArchive產生的壓縮包,小的壓縮包都能下載,今天遇到個150M以上的就報404錯誤,第一想到的就是檔案大小超出了PHP預設設置,修改方法有兩個:

php.ini:memory_limit

memory_limit是設定記憶體限制的,如果使用readfile()讀取檔案就會跟這個有關,直接修改這個值儲存後重新啟動php-fpm即可。

memory_limit = 128M

最後記得:service php-fpm restart

ini_set

PHP ini_set用來設定php.ini的值,在函數執行的時候生效,那我們直接用來修改記憶體執行大小即可,有些朋友用的如果是虛擬空間的話,這個函數就是救星了。

ini_set('memory_limit', '512M');


完整的範例:

set_time_limit(0);
ini_set('memory_limit', '512M');
header("Cache-Control: public");
header("Content-Description: File Transfer");
header('Content-disposition: attachment; filename=' . basename($zipfile));
header("Content-Type: application/zip");
header("Content-Transfer-Encoding: binary");
header('Content-Length: ' . filesize($zipfile));
ob_clean();
flush();
@readfile($zipfile);
unlink($zipfile);

相關推薦:

php readfile()修改檔案上傳大小案例

readfile ()函數設定php檔案大小方法

php中如何利用readfile()函數來修改檔案上傳大小的設定詳解

以上是php中readfile() 函數設定檔案大小的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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