跨浏览器PHP下载文件名中的中文乱码问题解决方法
这篇文章主要介绍了跨浏览器PHP下载文件名中的中文乱码问题解决方法,涉及php针对中文编码的转码技巧,具有一定参考借鉴价值,需要的朋友可以参考下
本文实例讲述了跨浏览器PHP下载文件名中的中文乱码问题解决方法,分享给大家供大家参考,具体如下:
- <?php
- $ua = $_SERVER["HTTP_USER_AGENT"];
- $filename = "中文 文件名.txt";
- $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 . '"');
- }
- print 'ABC';
- ?>