使用PHP Excel类读取和生成excel文件

Posted 张玺

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用PHP Excel类读取和生成excel文件相关的知识,希望对你有一定的参考价值。

使用php来生成Excel的方法有很多,比如使用最简单的回车符,制表符来生成,或者直接使用html 的table格式,但这些方式兼容性都有所欠缺。测试了一下PHPExce类,发现太l强大了,可以输出非常复杂的excel表格,另外说一下还可以读取 Excel文件。闲话少说,放出简要代码:

<?php
require_once ‘./Classes/PHPExcel.php‘;  

$objExcel = new PHPExcel();  
$objWriter = new PHPExcel_Writer_Excel5($objExcel);     // 用于其他版本格式  
$objExcel->setActiveSheetIndex(0);  
$objActSheet = $objExcel->getActiveSheet();  
//设置当前活动sheet的名称  

$objActSheet->setTitle(‘sheet1‘);  

$objActSheet->setCellValue(‘A2‘, ‘中国11‘);  // 设置Excel中的内容  A2表示坐标

//生成excel到文件  
//$objWriter->save(‘./test.xls‘);  
//或者直接浏览器下载   (任选其一)
$outputFileName = "output.xls";
header("Content-Type:application/octet-stream;charset=utf-8");
header(‘Content-Disposition: attachment; filename=‘ . $outputFileName);
$objWriter->save(‘php://output‘);
?>

 

另外还可以读取Excel文件,示例代码

  1. <?php
  2. $xlsPath ‘./test.xls‘//指定要读取的exls路径 
  3. //$type = ‘Excel2007‘; //设置要解析的Excel类型 Excel5(2003或以下版本)或Excel2007
  4. $type ‘Excel5‘;
  5. //引入excel类
  6. include ‘Classes/PHPExcel.php‘;            
  7. include ‘Classes/PHPExcel/IOFactory.php‘;
  8. $xlsReader PHPExcel_IOFactory::createReader($type);  
  9. $xlsReader->setReadDataOnly(true);
  10. $xlsReader->setLoadSheetsOnly(true);
  11. $Sheets $xlsReader->load($xlsPath);
  12. //开始读取
  13. $Sheet $Sheets->getSheet(0)->toArray(); //读取第一个工作表(注意编号从0开始) 如果读取多个可以做一个循环0,1,2,3....

  14. //得到二维数组,每个小数组是excel表格内容的一行 里面包含此行的每列的数据  
  15. echo ‘<pre>‘;
  16. print_r($Sheet);
  17. ?>

下面给出示例文件以及Excel类

技术分享 下载PHPExcel类及示例文件

以上是关于使用PHP Excel类读取和生成excel文件的主要内容,如果未能解决你的问题,请参考以下文章

如何接收layui上传excel上传及php处理

PHP如何读取大excel文件数据的方法

EpPlus读取生成Excel帮助类+读取csv帮助类+Aspose.Cells生成Excel帮助类

PHP 使用 PHPExcel 库生成 Excel 文件

php excel加密的实现方法有啥

php导出excel表后,打包成压缩包,然后下载到本地如何实现?