phpexcel类源码(PHPExcel)
本文目录一览:
- 1、PHPExcel导出的Excel文件是真正的Excel文件呢还是伪Excel文件?
- 2、PHPExcel如何设置某列的格式为数值
- 3、哪位大哥分享下企业号php主动调用的源码
- 4、php读取excel文件示例分享(更新修改excel)
- 5、PHPExcel生成Excel无法读取
- 6、php查询excel结果返回当前页面
PHPExcel导出的Excel文件是真正的Excel文件呢还是伪Excel文件?
总结 php导出Excel php导入Excel PhpExcel使用说明 PhpExcel使用手册2009/03/06 上午 02:37方法一:特点,简单,省心,
?php
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=test_data.xls");
$tx='表头';
echo $tx."\n\n";
//输出内容如下:
echo "姓名"."\t";
echo "年龄"."\t";
echo "学历"."\t";
echo "\n";
echo "张三"."\t";
echo "25"."\t";
echo "本科"."\t";
?
方法二: 引用google code中推荐的小类库(大体同方法一,比较复杂点)
方法三: PHPEXCEL 类库,功能强大,支持win Excel2003 ,Win Excel2007.
?
//设置PHPExcel类库的include path
set_include_path('.'. PATH_SEPARATOR .
'D:\Zeal\PHP_LIBS' . PATH_SEPARATOR .
get_include_path());
/**
* 以下是使用示例,对于以 //// 开头的行是不同的可选方式,请根据实际需要
* 打开对应行的注释。
* 如果使用 Excel5 ,输出的内容应该是GBK编码。
*/
require_once 'PHPExcel.php';
// uncomment
////require_once 'PHPExcel/Writer/Excel5.php'; // 用于其他低版本xls
// or
////require_once 'PHPExcel/Writer/Excel2007.php'; // 用于 excel-2007 格式
// 创建一个处理对象实例
$objExcel = new PHPExcel();
// 创建文件格式写入对象实例, uncomment
////$objWriter = new PHPExcel_Writer_Excel5($objExcel); // 用于其他版本格式
// or
////$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 用于 2007 格式
//$objWriter-setOffice2003Compatibility(true);
//*************************************
//设置文档基本属性
$objProps = $objExcel-getProperties();
$objProps-setCreator("Zeal Li");
$objProps-setLastModifiedBy("Zeal Li");
$objProps-setTitle("Office XLS Test Document");
$objProps-setSubject("Office XLS Test Document, Demo");
$objProps-setDescription("Test document, generated by PHPExcel.");
$objProps-setKeywords("office excel PHPExcel");
$objProps-setCategory("Test");
//*************************************
//设置当前的sheet索引,用于后续的内容操作。
//一般只有在使用多个sheet的时候才需要显示调用。
//缺省情况下,PHPExcel会自动创建第一个sheet被设置SheetIndex=0
$objExcel-setActiveSheetIndex(0);
$objActSheet = $objExcel-getActiveSheet();
//设置当前活动sheet的名称
$objActSheet-setTitle('测试Sheet');
//*************************************
//设置单元格内容
//
//由PHPExcel根据传入内容自动判断单元格内容类型
$objActSheet-setCellValue('A1', '字符串内容'); // 字符串内容
$objActSheet-setCellValue('A2', 26); // 数值
$objActSheet-setCellValue('A3', true); // 布尔值
$objActSheet-setCellValue('A4', '=SUM(A2:A2)'); // 公式
//显式指定内容类型
$objActSheet-setCellValueExplicit('A5', '847475847857487584',
PHPExcel_Cell_DataType::TYPE_STRING);
//合并单元格
$objActSheet-mergeCells('B1:C22');
//分离单元格
$objActSheet-unmergeCells('B1:C22');
//*************************************
//设置单元格样式
//
//设置宽度
$objActSheet-getColumnDimension('B')-setAutoSize(true);
$objActSheet-getColumnDimension('A')-setWidth(30);
$objStyleA5 = $objActSheet-getStyle('A5');
//设置单元格内容的数字格式。
//
//如果使用了 PHPExcel_Writer_Excel5 来生成内容的话,
//这里需要注意,在 PHPExcel_Style_NumberFormat 类的 const 变量定义的
//各种自定义格式化方式中,其它类型都可以正常使用,但当setFormatCode
//为 FORMAT_NUMBER 的时候,实际出来的效果被没有把格式设置为"0"。需要
//修改 PHPExcel_Writer_Excel5_Format 类源代码中的 getXf($style) 方法,
//在 if ($this-_BIFF_version == 0x0500) { (第363行附近)前面增加一
PHPExcel如何设置某列的格式为数值
设置单元格的值并指定其数据类型
$objPHPExcel-getActiveSheet()-setCellValueExplicit("D1", "1234567890",PHPExcel_Cell_DataType::TYPE_NUMERIC);
其他设置
setCellValueByColumnAndRow():通过列索引和行索引设置单元格的值,返回类型同上
setCellValueExplicit():设置单元格的值,并显示指定数据类型,返回工作表对象
setCellValueExplicitByColumnAndRow():通过列和行索引设置单元格值
setTitle():设置工作表标题
哪位大哥分享下企业号php主动调用的源码
$objPHPExcel-setActiveSheetIndex(0)
$rowb = $dsql-GetOne("Select sum(b.hongli) as hongli From `ek_member_incash` b");
$hongli=$rowb['hongli'];
-setCellValue('A4', $hongli)
-setCellValue('A5', 'éàèùâêîôûëïüÿäöüç');
这段代码有问题。
正确的顺序应该是
$rowb = $dsql-GetOne("Select sum(b.hongli) as hongli From `ek_member_incash` b");
$hongli=$rowb['hongli'];
$objPHPExcel-setActiveSheetIndex(0)
-setCellValue('A4', $hongli)
-setCellValue('A5', 'éàèùâêîôûëïüÿäöüç');
这样把 。
ps:在写php代码的时候 可以使用ide。这样可以提交你的编码速度,而且比较容易找到问题。
php读取excel文件示例分享(更新修改excel)
复制代码
代码如下:
//模板存放目录
$dir
=
$DOCUMENT_ROOT.'/backoffice/admin/oemcheck/';
$templateName
=
'1.xlsx';
$outputFileName
=
'模板.xlsx';
$txt='test';
//实例化Excel读取类
$PHPReader
=
new
PHPExcel_Reader_Excel2007();
if(!$PHPReader-canRead($dir.$templateName)){
$PHPReader
=
new
PHPExcel_Reader_Excel5();
if(!$PHPReader-canRead($dir.$templateName)){
echo
'无法识别的Excel文件!';
return
false;
}
}
//读取Excel
$PHPExcel
=
$PHPReader-load($dir.$templateName);
//读取工作表1
$currentSheet
=
$PHPExcel-getSheet(0);
$currentSheet-setCellValue('B13',iconv('gbk','utf-8',$txt));//表头赋值//
//实例化Excel写入类
$PHPWriter
=
new
PHPExcel_Writer_Excel2007($PHPExcel);
ob_start();
header("Content-Type:
application/force-download");
header("Content-Type:
application/octet-stream");
header("Content-Type:
application/download");
header('Content-Disposition:attachment;filename="'
.$outputFileName.
'"');//输出模板名称
header("Content-Transfer-Encoding:
binary");
header("Last-Modified:".gmdate("D,
d
M
Y
H:i:s")."
GMT");
header('Pragma:
public');
header('Expires:
30');
header('Cache-Control:
public');
$PHPWriter-save('php://output');
PHPExcel生成Excel无法读取
总结 php导出Excel php导入Excel PhpExcel使用说明 PhpExcel使用手册2009/03/06 上午 02:37方法一:特点,简单,省心,
?php
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=test_data.xls");
$tx='表头';
echo $tx."\n\n";
//输出内容如下:
echo "姓名"."\t";
echo "年龄"."\t";
echo "学历"."\t";
echo "\n";
echo "张三"."\t";
echo "25"."\t";
echo "本科"."\t";
?
方法二: 引用google code中推荐的小类库(大体同方法一,比较复杂点)
方法三: PHPEXCEL 类库,功能强大,支持win Excel2003 ,Win Excel2007.
?
//设置PHPExcel类库的include path
set_include_path('.'. PATH_SEPARATOR .
'D:\Zeal\PHP_LIBS' . PATH_SEPARATOR .
get_include_path());
/**
* 以下是使用示例,对于以 //// 开头的行是不同的可选方式,请根据实际需要
* 打开对应行的注释。
* 如果使用 Excel5 ,输出的内容应该是GBK编码。
*/
require_once 'PHPExcel.php';
// uncomment
////require_once 'PHPExcel/Writer/Excel5.php'; // 用于其他低版本xls
// or
////require_once 'PHPExcel/Writer/Excel2007.php'; // 用于 excel-2007 格式
// 创建一个处理对象实例
$objExcel = new PHPExcel();
// 创建文件格式写入对象实例, uncomment
////$objWriter = new PHPExcel_Writer_Excel5($objExcel); // 用于其他版本格式
// or
////$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 用于 2007 格式
//$objWriter-setOffice2003Compatibility(true);
//*************************************
//设置文档基本属性
$objProps = $objExcel-getProperties();
$objProps-setCreator("Zeal Li");
$objProps-setLastModifiedBy("Zeal Li");
$objProps-setTitle("Office XLS Test Document");
$objProps-setSubject("Office XLS Test Document, Demo");
$objProps-setDescription("Test document, generated by PHPExcel.");
$objProps-setKeywords("office excel PHPExcel");
$objProps-setCategory("Test");
//*************************************
//设置当前的sheet索引,用于后续的内容操作。
//一般只有在使用多个sheet的时候才需要显示调用。
//缺省情况下,PHPExcel会自动创建第一个sheet被设置SheetIndex=0
$objExcel-setActiveSheetIndex(0);
$objActSheet = $objExcel-getActiveSheet();
//设置当前活动sheet的名称
$objActSheet-setTitle('测试Sheet');
//*************************************
//设置单元格内容
//
//由PHPExcel根据传入内容自动判断单元格内容类型
$objActSheet-setCellValue('A1', '字符串内容'); // 字符串内容
$objActSheet-setCellValue('A2', 26); // 数值
$objActSheet-setCellValue('A3', true); // 布尔值
$objActSheet-setCellValue('A4', '=SUM(A2:A2)'); // 公式
//显式指定内容类型
$objActSheet-setCellValueExplicit('A5', '847475847857487584',
PHPExcel_Cell_DataType::TYPE_STRING);
//合并单元格
$objActSheet-mergeCells('B1:C22');
//分离单元格
$objActSheet-unmergeCells('B1:C22');
//*************************************
//设置单元格样式
//
//设置宽度
$objActSheet-getColumnDimension('B')-setAutoSize(true);
$objActSheet-getColumnDimension('A')-setWidth(30);
$objStyleA5 = $objActSheet-getStyle('A5');
//设置单元格内容的数字格式。
//
//如果使用了 PHPExcel_Writer_Excel5 来生成内容的话,
//这里需要注意,在 PHPExcel_Style_NumberFormat 类的 const 变量定义的
//各种自定义格式化方式中,其它类型都可以正常使用,但当setFormatCode
//为 FORMAT_NUMBER 的时候,实际出来的效果被没有把格式设置为"0"。需要
//修改 PHPExcel_Writer_Excel5_Format 类源代码中的 getXf($style) 方法,
//在 if ($this-_BIFF_version == 0x0500) { (第363行附近)前面增加一
php查询excel结果返回当前页面
用PHPExcel,PHPExcel是相当强大的 MS Office Excel 文档生成类库。
你上它的官/网把程序包下/载下来,里面有 PHPExcel 的程序、还有30个实例程序和三个文档。
看一下其中的开发文档你就会用了。
读取(这段在开发文档里有的,在13页):
require_once '../Classes/PHPExcel/IOFactory.php';
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objReader-setReadDataOnly(true);
$objPHPExcel = $objReader-load("test.xlsx");
$objWorksheet = $objPHPExcel-getActiveSheet();
echo 'table' . "\n";
foreach ($objWorksheet-getRowIterator() as $row) {
echo 'tr' . "\n";
$cellIterator = $row-getCellIterator();
$cellIterator-setIterateOnlyExistingCells(false);
foreach ($cellIterator as $cell) {
echo 'td' . $cell-getValue() . '/td' . "\n";
}
echo '/tr' . "\n";
}
echo '/table' . "\n";
?