首頁  >  文章  >  後端開發  >  php的下載功能

php的下載功能

不言
不言原創
2018-05-14 15:50:462442瀏覽

這個是xx.php檔的程式碼開始

<?php
	//文件下载的封装(超链接的方式)
function down_file($filename,$allowDownExt=array(&#39;zip&#39;,&#39;html&#39;,&#39;rar&#39;)){
	if(!is_file($filename)||!is_readable($filename)){
		return false;
	}
	$ext=strtolower(pathinfo($filename,PATHINFO_EXTENSION));
	if(!in_array($ext, $allowDownExt)){
		return false;
	}
	//发送请求头,告诉浏览器输出的是字节流
	header(&#39;content-type:application/octet-stream&#39;);
	//告诉浏览器文件是按照字节来计算的
	header(&#39;Accept-Ranges:bytes&#39;);
	//告诉浏览器文件的大小
	header(&#39;Accept-Length:&#39;.filesize($filename));
	//告诉浏览器文件是按附件处理,并且告诉浏览器下载的文件的名称
	header(&#39;Content-Disposition:attachment;filename=&#39;.basename($filename));
	//读取文件的内容
	readfile($filename);
	exit;
}
?>

這個是xx.php檔的程式碼結束

這個是index.html檔的程式碼開始

<!DOCTYPE html>
<html>
<head>
 <meta charset="UTF-8">
 <title>Document</title>
</head>
<body>
 <a href="http://localhost:8081/download.php?filename=5.html">下载5.html</a>
</body>
</html>

這個是index.html檔的程式碼結束

這個是download.php檔的程式碼開始

<?php
	require_once(&#39;xx.php&#39;);
	$filename=$_GET[&#39;filename&#39;];
	down_file($filename);
?>

這個是download. php檔案的程式碼結束

相關推薦:

PHP的列印問題

以上是php的下載功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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