這篇文章主要介紹了php實現文件下載簡單示例,需要的朋友可以參考下
代碼如下: public function downloads($name){ $name_tmp = explode("_",$name); $type = $name_tmp[0]; $file_time = explode(".",$name_tmp[3]); $file_time = $file_time[0]; $file_date = date("Y/md",$file_time); $file_dir = SITE_PATH."/data/uploads/$type/$file_date/"; if (!file_exists($file_dir.$name)){ header("Content-type: text/html; charset=utf-8"); echo "File not found!"; exit; } else { $file = fopen($file_dir.$name,"r"); Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); Header("Accept-Length: ".filesize($file_dir . $name)); Header("Content-Disposition: attachment; filename=".$name); echo fread($file, filesize($file_dir.$name)); fclose($file); } } 示例2:代碼實現文件下載 一般實現下載都是調用url來下載,但是遇到ie能識別打開的文件就不能用這種方式了,比如下載一個圖片、html網頁等,這時就需要編程來實現,以下php代碼可以解決: 代碼如下: <? if( empty($_GET['FileName'])|| empty($_GET['FileDir'])|| empty($_GET['FileId'])){ echo'<script> alert("非法連接 !"); location.replace ("index.php") </script>'; exit(); } $file_name=$_GET['FileName']; $file_dir=$_GET['FileDir']; $FileId=$_GET['FileId']; $file_dir = $file_dir."/"; if (!file_exists($file_dir.$file_name)) { //檢查文件是否存在 echo "文件找不到"; exit; } else { $file = fopen($file_dir . $file_name,"r"); // 打開文件 // 輸入文件標簽 Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); Header("Accept-Length: ".filesize($file_dir . $file_name)); Header("Content-Disposition: attachment; filename=" . $file_name); // 輸出文件內容 echo fread($file,filesize($file_dir . $file_name)); fclose($file); exit(); } ?>