PHP解决浏览器 下载文件 中文名称乱码问题--兼容大多浏览器

来源:互联网 发布:扫描软件免费下载 编辑:程序博客网 时间:2024/05/20 19:46
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;}

原创粉丝点击