PHP 导出Excel一点小经验 解决乱码问题.
来源:互联网 发布:阿里鱼卡 知乎 编辑:程序博客网 时间:2024/05/22 01:29
我在PHP项目里要求把数据导出为Excel,并且数据中包含中文.
网上大概了解一下可是使用PHPExcel,可是相对我的需求,这个框架太复杂了.于是还是想找找简单做法.
网上发现其实最简单可以这样写,但问题是这种做法中文的编码不可靠..
- <?php
- header("Content-type:application/vnd.ms-excel");
- header("Content-Disposition:attachment;filename=export_data.xls");
- echo "姓名"."\t";
- echo "繁體"."\t";
- echo "博客"."\t";
- echo "\n";
- echo "jason"."\t";
- echo "@"."\t";
- echo "javaeye"."\t";
- ?>
有些同学会想到header加入字符集
- header("Content-type:application/vnd.ms-excel;charset=UTF-8");
问题: 这里只是告诉浏览器要选什么字符集查看,最终我的需求还是要生成xls文件.
当然.有些同学还会想到用iconv转码.
- echo iconv("当前编码","GB18030","此博客来源于javaeye,by jason");
问题: 这样文件里的汉字编码就GB18030,可是Excel这么知道用什么编码打开呢?只能完全依赖OS默认.可是如果碰到繁体BIG5这么办,还是会乱码. 所以还是不靠谱.
最后我采用phpMyAdmin的做法.用HTMLExcel, HTML我们比较熟悉,格式如下.
- <html xmlns:o="urn:schemas-microsoft-com:office:office"
- xmlns:x="urn:schemas-microsoft-com:office:excel"
- xmlns="http://www.w3.org/TR/REC-html40">
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html>
- <head>
- <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
- <style id="Classeur1_16681_Styles"></style>
- </head>
- <body>
- <div id="Classeur1_16681" align=center x:publishsource="Excel">
- <table x:str border=0 cellpadding=0 cellspacing=0 width=100% style="border-collapse: collapse">
- <tr><td class=xl2216681 nowrap>1234</td><td class=xl2216681 nowrap>Robbin会吐口水</td></tr>
- <tr><td class=xl2216681 nowrap>5678</td><td class=xl2216681 nowrap>javaeye网站</td></tr>
- </table>
- </div>
- </body>
- </html>
这下可以直接echo了,又不需要iconv转码,只要设置好HTML里的Content-type(这里用的是UTF-8),是不是有舒服的感觉呢? 当然header还是要加上
- header("Content-type:application/vnd.ms-excel");
- header("Content-Disposition:attachment;filename=export_data.xls");
一点小经验和各位同学分享一下.. :)
- PHP 导出Excel一点小经验 解决乱码问题.
- PHP 导出Excel一点小经验 解决乱码问题
- PHP 导出Excel一点小经验 解决乱码问题.
- PHP 导出Excel一点小经验 解决乱码问题
- php 导出 excel 乱码问题
- Php导出Excel文件乱码的解决
- java-导出excel并解决乱码问题
- 解决excel导出csv乱码问题
- PHP--导出excel乱码问题的解决方案
- PHP导出excel乱码
- php导出excel乱码
- PHP从数据库导出数据到excel,无插件(解决中文以及法语乱码问题)
- as3xls导出Excel和解决导出中文乱码问题
- PHP的一点小经验
- 新手解决winform问题的一点小经验
- excel 导出乱码问题
- Excel导出乱码问题
- 导出Excel的简单方法,并可以解决乱码问题
- Linux 内存管理 面试回答
- 关于eclipse中关联各版本Android.jar对应的源代码方法
- 傅立叶变换在图像处理中的作用
- ubuntu下手工切换gcc版本
- 如何求补码
- PHP 导出Excel一点小经验 解决乱码问题.
- 一步一步写算法(之字符串查找 下篇)
- Linux内核高端内存管理
- 模拟单击ClistCtrl消息
- 这几天完成这道题目
- 转: linux SCP用法
- stl 常用函数(包括vector list stack queue)
- 程序员养生 -- 心态
- 【未出现的字串】解题报告