phpexcel导出中文文件名出错

php中文网
发布: 2016-06-20 12:45:52
原创
1248人浏览过

header("content-disposition: attachment;filename=$filename");
$filename是中文的话下载到的文件就是.php的   英文的话可以

挖错网
挖错网

一款支持文本、图片、视频纠错和AIGC检测的内容审核校对平台。

挖错网 28
查看详情 挖错网


回复讨论(解决方案)

试试

    $user_agent = $_SERVER['Http_User_agent'];      $encode_filename = rawurlencode($filename);     if(preg_match("/MSIE/", $user_agent)){          header('content-disposition:attachment; filename="'.$encode_filename.'"');      }else if(preg_match("/Firefox/", $user_agent)){          header("content-disposition:attachment; filename*=\"utf8''".$filename.'"');      }else{          header('content-disposition:attachment; filename="'.$filename.'"');      }  
登录后复制

试试

    $user_agent = $_SERVER['Http_User_agent'];      $encode_filename = rawurlencode($filename);     if(preg_match("/MSIE/", $user_agent)){          header('content-disposition:attachment; filename="'.$encode_filename.'"');      }else if(preg_match("/Firefox/", $user_agent)){          header("content-disposition:attachment; filename*=\"utf8''".$filename.'"');      }else{          header('content-disposition:attachment; filename="'.$filename.'"');      }  
登录后复制



打开下载文件 好像是第一个文字有问题 求解

1、header("Content-Disposition: attachment;filename= $filename"); 必须是不含路径的纯文件名
2、phpexcel 默认字符集是 utf-8,一般人都采用浪费资源的 utf-8 保存程序文件。这就不可避免的可能有 BOM 头

其实微软是很贴心的,他只是对非英文系统采用双字节(utf-8中文是3字节)
如果一个人看不懂双字节中文的话,他一样看不懂3字节的中文!于是你们所谓的国际化不是自欺欺人吗?

1、header("Content-Disposition: attachment;filename= $filename"); 必须是不含路径的纯文件名
2、phpexcel 默认字符集是 utf-8,一般人都采用浪费资源的 utf-8 保存程序文件。这就不可避免的可能有 BOM 头


解决了,谢谢!
WPS零基础入门到精通全套教程!
WPS零基础入门到精通全套教程!

全网最新最细最实用WPS零基础入门到精通全套教程!带你真正掌握WPS办公! 内含Excel基础操作、函数设计、数据透视表等

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号