PHPEXCEL 不能输出中文

最帅马老师 2009-12-27 05:01:24
我用PHPEXCEL类有段时间了,但一直没有操作过中文内容,最近由于需要在输出 的EXCEL中输出中文内容,但输出一直是空白,请问有没有同行也曾碰到过这种情况

如能解决,全部分相送
...全文
2525 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
yanhexiong198774 2011-12-16
  • 打赏
  • 举报
回复
我用phpexce导出pdf文件,不对头啊
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '这里是A1单元格')
->setCellValue('B2', '这里是B2单元格')
->setCellValue('C1', '这里是C1单元格')
->setCellValue('D2', '这里是D2单元格');
边框特别粗,并且汉字不显示
icelemon1990 2011-11-02
  • 打赏
  • 举报
回复
谢谢七楼和楼主,找了好久终于在把问题解决了!
chaoplay 2011-06-20
  • 打赏
  • 举报
回复
解决了多谢十楼的朋友
无忧1117 2011-05-02
  • 打赏
  • 举报
回复
header('Content-Type:text/html;charset=utf-8');
不知道为什么页面叫上这句,为什么导出的EXCEL中文处还是空白。
我加上一个访求,省的里面出现N多的iconv()函数、
方法:页面还是照常做,先别去管空白,把做好的PHP文件,用记事本打开,别存为UTF-8格式,这样就把导出
中文空白的问题解决了。
总结:个人感觉我没有理解透PHP编码的各项事宜,弄的用很多类时,都出现乱码,每次都是在网上七找八找,然后按照别人的方法把问题解决,但是实质还是不理解。
wujuexin 2011-04-27
  • 打赏
  • 举报
回复
非常感谢,问题解决了!
Syuuhi 2010-08-07
  • 打赏
  • 举报
回复
十楼的你亮了,遇到这个问题一直解决不了
faxhaidong 2009-12-29
  • 打赏
  • 举报
回复
非常感谢10搂的朋友,我的问题解决了。
littlebirds 2009-12-28
  • 打赏
  • 举报
回复
学习一下。
jaxio 2009-12-28
  • 打赏
  • 举报
回复
phpexcel有些直接把中文转为html显示的方式了。直接在页面显示是不是不会出问题?那就更改厘米那的编码为utf-8或者你想要的GBK或者gb2312就可以了
xuzuning 2009-12-28
  • 打赏
  • 举报
回复
以他带的示例文件为例 01simple-download-xls.php

// Add some data
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', iconv('gbk', 'utf-8', '中文Hello'))
->setCellValue('B2', 'world!')
->setCellValue('C1', 'Hello')
->setCellValue('D2', 'world!');
foolbirdflyfirst 2009-12-28
  • 打赏
  • 举报
回复
把你的数据转成utf-8,再用phpexcel写入excel文件
php自带的两个函数可以实现编码转换,你试试看。
1.iconv
2.mb_convert_encoding
最帅马老师 2009-12-28
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 xuzuning 的回复:]
中文需要用 utf-8 编码

[/Quote]

能不能说详细点,如何做

想来也可能是编码问题,看到有很多人碰到同样的问题,但还是没有好的办法能解决
xuzuning 2009-12-28
  • 打赏
  • 举报
回复
中文需要用 utf-8 编码
最帅马老师 2009-12-28
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 xuzuning 的回复:]
以他带的示例文件为例 01simple-download-xls.php

// Add some data
$objPHPExcel->setActiveSheetIndex(0)
            ->setCellValue('A1', iconv('gbk', 'utf-8', '中文Hello'))
            ->setCellValue('B2', 'world!')
            ->setCellValue('C1', 'Hello')
            ->setCellValue('D2', 'world!');

[/Quote]

这个靠谱,结贴
最帅马老师 2009-12-27
  • 打赏
  • 举报
回复
是不是这个问题无解
最帅马老师 2009-12-27
  • 打赏
  • 举报
回复
汗,楼上是不是没有明白我的意思,我说的是用PHPEXCEL类

是使用PHPEXCEL类时不能输出中文

http://www.codeplex.com/PHPExcel/
骄傲青蛙 2009-12-27
  • 打赏
  • 举报
回复
自己动手写输出, 好简单, 本来从没试过会是中文乱码, 或输出空白内容

本人是这样写的,都没问题, 桌面环境一直是linux, window下没测试过,

只要把test.csv换成其它xls类型就可以了,

$result ; //这是一个二维数组, 例如 一张表
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:filename=test.csv");
foreach($result as $row){
echo "{$row['tcid']},{$row['name']},{$row['des']},{$row['sort']}\n";
}


楼主试下可不可以请回复

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧