header函數實現文件下載

文件下載功能是網站中常見的一個小功能,本節介紹一下它的具體實現方式。

對於瀏覽器支持直接瀏覽的文件類型,用戶點擊通常是直接將文件打開達到了瀏覽的效果,對於部分不支持直接瀏覽的文件,瀏覽器會自動實現將文件下載到本地。我們這裏針對的是瀏覽器支持瀏覽的文件,通過程序來實現文件的下載,實質就是使文件以附件的形式被用戶打開。

前端

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<title>下載</title>
</head>
<body>
<!-- 直接點擊會打開文件 -->
<a href="1.jpg">下載圖片</a>
<!-- 直接點擊會實現下載效果 -->
<a href="doDownload.php?filename=1.jpg">通過程序下載1.jpg</a>
<a href="doDownload.php?filename=../upload/nv.jpg">下載nv.jpg</a>
</body>
</html>

後端

<?php 
$filename = $_GET['filename'];
header('content-disposition:attachment;filename='.basename($filename));//告訴瀏覽器以附件形式處理文件
header('content-length:'.filesize($filename));
readfile($filename);
?>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章