本文共 626 字,大约阅读时间需要 2 分钟。
解决PHP Header下载文件在IE文件名中文乱码有两种常见的,一种是是把页面编码改成utf8,另一种是对中文url进入urlencode编码,根据UA检测,区别下载,就可以解决了
$filename = "中文.txt";$ua = $_SERVER["HTTP_USER_AGENT"];$encoded_filename = urlencode($filename);$encoded_filename = str_replace("+", "%20", $encoded_filename);header('Content-Type: application/octet-stream');if (preg_match("/MSIE/", $ua)) { header('Content-Disposition: attachment; filename="' . $encoded_filename . '"');} else if (preg_match("/Firefox/", $ua)) { header('Content-Disposition: attachment; filename*="utf8''' . $filename . '"');} else { header('Content-Disposition: attachment; filename="' . $filename . '"');}
转载地址:http://gefga.baihongyu.com/