您的位置:首页 > 编程语言 > PHP开发

PHP 生成Excel表格两种方法

2010-04-08 18:23 447 查看
1、使用PHP header()函数 (向浏览器输出Excel,即通过浏览器方式,下载生成的excel)

实例:

/**

* PHP 使用heade()函数生成excel表格 ExcelName为表格名称

* 注:在使用时,注意编码问题;如果有问题,可以使用iconv()函数进行转码,如iconv('utf-8', 'gb2312', ExcelName)

*/

header("Content-type:application/vnd.ms-excel"); //表示输出Excel文件

header("Content-Disposition:attachment; filename=ExcelName.xls");//文件名

echo '第一列'.chr(9).'第二列'.chr(9).'第三列'.chr(9).chr(13);

echo '第一列值'.chr(9).'第二列值'.chr(9).'第三列值'.chr(9).chr(13);

2、使用Excel文件代码 (实现在服务器端生成Excel文件 一个Excel文件一个或多个Worksheet )

实例:

$excelHeader = "<?xml version=/"1.0/" encoding=/"GB2312/"?/>/n<Workbook xmlns=/"urn:schemas-microsoft-com:office:spreadsheet/" xmlns:x=/"urn:schemas-microsoft-com:office:excel/" xmlns:ss=/"urn:schemas-microsoft-com:office:spreadsheet/" xmlns:html=/"http://www.w3.org/TR/REC-html40/">/n";//Excel代码头部
$excelFooter = "</Workbook>";

//Excel表格主体部分
$context = "<Worksheet ss:Name=/"".$filename."/">/n<Table>/n ";
$context .= "<Row>/n ";
$context .= "<Cell><Data ss:Type=/"String/">".iconv("UTF-8","GB2312","用户UID")."</Data></Cell>/n";
$context .= "<Cell><Data ss:Type=/"String/">".iconv("UTF-8","GB2312","用户名")."</Data></Cell>/n";
$context .= "<Cell><Data ss:Type=/"String/">".iconv("UTF-8","GB2312","性别")."</Data></Cell>/n";
$context .= "</Row>/n";
$context . = "</Table>/n</Worksheet>/n";

$line = $excelHeader. $context.$excelFooter; // 一个Excel文件一个Worksheet
//$line = $excelHeader. $context.$context.$excelFooter; // 一个Excel文件两个Worksheet
$fp = fopen( "/tmp/excelName.xls", "a+");

if($fp) {

fwrite($fp, stripslashes($line));

fclose($fp);

}

注:
无论使用哪种方法,注意编码问题,可以使用iconv()函数进行转码输出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: