时时商务社区

标题: 基于PHP导出Excel的小经验 完美解决乱码问题 [打印本页]

作者: qz234    时间: 2018-2-14 08:20

            我在PHP项目里要求把数据导出为Excel,并且数据中包含中文.
网上大概了解一下可是使用PHPExcel,可是相对我的需求,这个框架太复杂了.于是还是想找找简单做法.
网上发现其实最简单可以这样写,但问题是这种做法中文的编码不可靠..
[U]复制代码[/U] 代码如下:

有些同学会想到header加入字符集
[U]复制代码[/U] 代码如下:
header("Content-type:application/vnd.ms-excel;charset=UTF-8");
问题: 这里只是告诉浏览器要选什么字符集查看,最终我的需求还是要生成xls文件.
当然.有些同学还会想到用iconv转码.
[U]复制代码[/U] 代码如下:
echo iconv("当前编码","GB18030","此博客来源于javaeye,by jason");
问题: 这样文件里的汉字编码就GB18030,可是Excel这么知道用什么编码打开呢?只能完全依赖OS默认.可是如果碰到繁体BIG5这么办,还是会乱码. 所以还是不靠谱.
最后我采用phpMyAdmin的做法.用HTMLExcel, HTML我们比较熟悉,格式如下.
[U]复制代码[/U] 代码如下:

  
  
      
         
         
      
     
         
            
1234Robbin会吐口水
5678javaeye网站

         
     

  
这下可以直接echo了,又不需要iconv转码,只要设置好HTML里的Content-type(这里用的是UTF-8),是不是有舒服的感觉呢? 当然header还是要加上
[U]复制代码[/U] 代码如下:
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=export_data.xls");
一点小经验和各位同学分享一下..

            
            
您可能感兴趣的文章:
  • php将数据库导出成excel的方法
  • PHP导出MySQL数据到Excel文件(fputcsv)
  • php中导出数据到excel时数字变为科学计数的解决方法
  • 基于php导出到Excel或CSV的详解(附utf8、gbk 编码转换)
  • php导入导出excel实例
  • php导出excel格式数据问题
  • PHP导入导出Excel代码
  • PHP使用PHPexcel导入导出数据的方法
  • PHP实现导出带样式的Excel
  • php中通用的excel导出方法实例
            




    欢迎光临 时时商务社区 (http://bbs.4435.cn/) Powered by Discuz! X3.2