ホームページ  >  記事  >  バックエンド開発  >  phpダウンロード機能

phpダウンロード機能

不言
不言オリジナル
2018-05-14 15:50:462447ブラウズ

これは、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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。