PHP檔案下載原理
1、php下載原理圖
2、檔案下載原始碼:
<?php $file_name="哈哈.jpg";//需要下載的檔案 $file_name=iconv("utf-8","gb2312","$file_name"); $fp=fopen($file_name,"r+");//下載檔案必須先要將檔案開啟,寫入記憶體 if(!file_exists($file_name)){//判斷檔案是否存在 echo "檔案不存在"; exit(); } $file_size=filesize("a.jpg");//判斷檔案大小 //返回的檔案 Header("Content-type: application/octet-stream"); //按照位元組格式返回 Header("Accept-Ranges: bytes"); //返回檔案大小 Header("Accept-Length: ".$file_size); //彈出客戶端對話方塊,對應的檔名 Header("Content-Disposition: attachment; filename=".$file_name); //防止伺服器瞬時壓力增大,分段讀取 $buffer=1024; while(!feof($fp)){ $file_data=fread($fp,$buffer); echo $file_data; } //關閉檔案 fclose($fp); ?>
3、檔案編碼問題解決方法:
如果檔名是中文,php的函式不能識別中文檔名,一般如果程式編碼為utf-8,php的函式比較古老,只能識別gb2312編碼的中文,所以把中文用iconv(“原編碼”,”要轉成的編碼”,”要轉碼的字串”)函式可以轉碼。
比如,把一個字串從utf-8轉碼為gb2312
$file_name=iconv(“utf-8”,”gb2312”,”$file_name”);
相關文章
- php檔案下載PHP
- php 檔案下載PHP
- PHP遠端下載檔案原理PHP
- 使用PHP下載檔案PHP
- [php]檔案下載簡述PHP
- 讓PHP提供更好的檔案下載PHP
- PHP下載遠端檔案及獲取檔案內容PHP
- php程式碼生成txt檔案並下載PHP
- PHP:檔案載入PHP
- PHP開發之檔案的上傳下載PHP
- 通過php下載檔案並重新命名PHP
- 檔案下載統計php程式設計 (轉)PHP程式設計
- 檔案下載
- php 支援斷點續傳的檔案下載類PHP斷點
- 00、下載檔案
- Ajax 下載檔案
- FastApi下載檔案ASTAPI
- MVC 下載檔案MVC
- js 檔案下載JS
- Servlet下載檔案Servlet
- httpWebRequest 檔案下載HTTPWeb
- .net 檔案下載
- HttpClient 下載檔案HTTPclient
- PHP+Mysql統計檔案下載次數例項PHPMySql
- Android–okhttp與php互動,檔案上傳下載AndroidHTTPPHP
- PHP實現檔案下載斷點續傳詳解PHP斷點
- 檔案程式設計、檔案下載程式設計
- iOS開發網路篇之檔案下載、大檔案下載、斷點下載iOS斷點
- PHP 如何上傳檔案和下載,你學會了嗎?PHP
- PHP大檔案下載(方式1不支援斷點續傳)PHP斷點
- 檔案上傳下載
- Flutter 下載檔案操作Flutter
- SpringMVC檔案下載SpringMVC
- 【springmvc】下載檔案SpringMVC
- 檔案下載相關
- ftp下載指定檔案FTP
- C#檔案下載C#
- PHP大檔案下載(方式2支援斷點續傳)PHP斷點