用php生成excel文件
<?
header(“Content-type:application/vnd.ms-excel”);
header(“Content-Disposition:filename=test.xls”);
echo “test1\t”;
echo “test2\t\n”;
echo “test1\t”;
echo “test2\t\n”;
echo “test1\t”;
echo “test2\t\n”;
?>
在php环境运行上面的代码,大家就可以看到浏览器询问用户是否下载excel文档,点击保存,硬盘上就多了一个excel的文件,使用excel打开就会看到最终的结果,怎么样不错吧。(excel出现乱码,则把网页编码换成gb2312即可)
其实在做真正的应用的时候,大家可以将数据从数据库中取出,然后按照每一列数据结束后加\t,每一行数据结束后加\n的方法echo出来,在php的开头用header(“Content-type:application/vnd.ms-excel”);表示输出的是excel文件,用header(“Content-Disposition:filename=test.xls”);表示输出的文件名为text.xls。这样就ok了。
我们更可以修改header让他输出更多格式的文件,这样php在处理各种类型文件方面就更加方便了.
<php生成excel乱码问题>
<?php
$c = “姓名\t年龄\n”;
$c .= “张三\t25”;
//UTF-8转换成GB2312写入
$c = iconv(“UTF-8″,”GB2312”,$c);
$fp = @fopen (“report.xls”, ‘wb’);
$file = @fwrite ($fp, $c);
@fclose ($fp);
?>
我测试的PHP文件是UTF-8,转换成GB生成的正常显示中文。
{jcomments on}