function sendFile($serverPath, $filename,$charset = 'UTF-8', $mimeType = 'application/octet-stream')
{
// 文件名乱码问题
if (preg_match("/MSIE/", $_SERVER["HTTP_USER_AGENT"])) {
$filename = urlencode($filename);
$filename = str_replace("+", "%20", $filename);// 替换空格
$attachmentHeader = "Content-Disposition: attachment; filename=\"{$filename}\"; charset={$charset}";
} else if (preg_match("/Firefox/", $_SERVER["HTTP_USER_AGENT"])) {
$attachmentHeader = 'Content-Disposition: attachment; filename*="utf8\'\'' . $filename. '"' ;
} else {
$attachmentHeader = "Content-Disposition: attachment; filename=\"{$filename}\"; charset={$charset}";
}
$filesize = filesize($serverPath);
//header("Pragma: public"); header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: {$mimeType}");
header($attachmentHeader);
header('Pragma: cache');
header('Cache-Control: public, must-revalidate, max-age=0');
header("Content-Length: {$filesize}");
readfile($serverPath);
exit;
}
PHP解决浏览器 下载文件 中文名称乱码问题--兼容大多浏览器
最新推荐文章于 2021-04-09 09:12:31 发布