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解决浏览器 上载文件 中文名称乱码有关问题-兼容大多浏览器
热度:75 发布时间:2016-04-28 23:46:43.0
相关解决方案