Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php的下载功能

php的下载功能

不言
不言asal
2018-05-14 15:50:462448semak imbas

这个是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的打印问题

Atas ialah kandungan terperinci php的下载功能. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn