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()函数进行转码输出。
实例:
/**
* 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()函数进行转码输出。
相关文章推荐
- 使用PHP生成二维码的两种方法(带logo图像)
- 使用PHP生成二维码的两种方法(带logo图像)
- 使用PHP生成二维码的两种方法(带logo图像)
- 使用PHP生成二维码的两种方法(带logo图像)
- php 两种短网址生成方法
- 使用PHP生成二维码的两种方法(带logo图像)
- PHP生成静态页面的两种方法
- PHP使用imagick读取PDF生成png缩略图的两种方法
- 两种PHP生成二维码的方法
- PHP两种方法生成强密码
- 使用PHP生成二维码的两种方法(带logo图像)
- PHP 生成一张图片的两种方法
- 使用PHP生成二维码的两种方法(带logo图像)
- 两种PHP生成二维码的方法
- PHP生成静态页面的两种方法
- PHP使用imagick读取PDF生成png缩略图的两种方法
- 使用PHP生成二维码的两种方法(带logo图像)
- 使用PHP生成二维码的两种方法(带logo图像)
- 一个php生成16位随机数的代码(两种方法)
- PHP 中生成随机数的两种方法