Heim  >  Artikel  >  Backend-Entwicklung  >  php实现文件下载的代码

php实现文件下载的代码

WBOY
WBOYOriginal
2016-07-25 09:00:26955Durchsuche
php代码实现文件的下载,主要是header函数的应用,有需要的朋友,可以参考下。

完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>PHP文件下载_程序员之家_bbs.it-home.org</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<?php
$file_name="test_ftp.zip";
if(!file_exists($file_name)){
echo "文件不存在!";
return;
}
$file_size=filesize($file_name);
$brtype = $_SERVER["HTTP_USER_AGENT"];//获取客户端浏览器信息
//中文文件名需要编码处理
//$encoded_filename = urlencode($filename);
//$encoded_filename = str_replace("+", "%20", $encoded_filename);
//中文文件名,需要编码处理
header("Content-type: application/zip");//指定下载的文件类型为zip格式
header("Accept-Ranges: bytes");
header("Content-Length:".$file_size);
if (preg_match("/MSIE/", $brtype)) {
   header('Content-Disposition: attachment; filename="' . $encoded_filename . '"');//IE下如果处理中文文件名需要编码
} else if (preg_match("/Firefox/", $brtype)) {
   header('Content-Disposition: attachment; filename*="utf8\'\'' . $file_name . '"');
} else {
   header('Content-Disposition: attachment; filename="' . $file_name . '"');
}
$data=readfile($file_name);
echo $data;
?>
</body>
</html>
以上的代码主要是应用php header函数实现文件的下载,在php中有很多的文件内容类型可以这样操作,大家有空多研究下了。


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn