PHP读取excel文档

项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel。

 
PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader。但是可惜的是不能够支持Excel 2007的格式(.xlsx)。
 
PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍下如何使用PHPExcel进行Excel 2007格式(.xlsx)文件的读取。
 
下载PHPExcel后保存到自己的类文件目录中,然后使用以下代码可以打开Excel 2007(xlsx)格式的文件:
 
1,require_once '/libs/PHPExcel-1.8.0/Classes/PHPExcel.php';     //修改为自己的目录
2,echo '<p>TEST PHPExcel 1.8.0: read xlsx file</p>';
3,$objReader=PHPExcel_IOFactory::createReaderForFile($filename);
4,$objPHPExcel = $objReader->load($filename);
5,$objPHPExcel->setActiveSheetIndex(1);
6,$date = $objPHPExcel->getActiveSheet()->getCell('A16')->getValue();
  

  

输出$date变量就能够看到文件中的内容了。PHPExcel使用PHPExcel_IOFactory这个类来自动匹配所上传的文件类型,当然我们也可以自己制定要解析的文件类型。之后通过load方法,将PHP文件加载到objPHPExcel对象中。如果Excel文件有多个Sheet,可以通过setActiveSheetIndex来设置当前活动的Sheet。如何通过Sheet名来获得当前Sheet我还不知道,如果有知道的可以站内我。
 
需要注意的是,对于Excel中的日期格式,PHPExcel读出来的是不是日期类型,需要我们使用以下方法来进行日期类型转换。
 
 
下面的代码显示了如何遍历显示Excel的内容:
 1 <table id="table_id">
2 <?php
3 $objWorksheet = $objPHPExcel->getActiveSheet();
4 $i = 0;
5 foreach($objWorksheet->getRowIterator() as $row){
6 ?>
7 <tr>
8 <?php
9 $cellIterator = $row->getCellIterator();
10 $cellIterator->setIterateOnlyExistingCells(false);
11
12 if( $i == 0 ){
13 echo '<thead>';
14 }
15 foreach($cellIterator as $cell){
16
17 echo '<td>' . $cell->getValue() . '</td>';
18
19 }
20 if( $i == 0 ){
21 echo '</thead>';
22 }
23 $i++;
24 ?>
25 </tr>
26 <?php
27 }
28 ?>
29 </table>
复制代码
该文转载:
http://www.cnblogs.com/cocowool/p/4025852.html
 

PHP读取excel文档的更多相关文章

  1. C#操作Excel(2)-- 打开-读取Excel文档

    由于要为某软件实现导出Excel功能,故有此文. 本文的开发环境是Visual Studio 2010 ,C#, Excel 2007. 新建C#工程后打开Solution Explorer,可以看到 ...

  2. Python实现读取Excel文档中的配置并下载软件包

    问题:现在遇到这样一个问题,服务器存储了很多软件包,这些包输入不同的产品,每个产品都有自己的配置,互相交叉,那么到底某一产品所有配置的软件包下载后,占用多大空间呢? 分析:从这个问题入手,了解到:软件 ...

  3. 【转】ExcelHelper类,用npoi读取Excel文档

    //------------------------------------------------------------------------------------- // All Right ...

  4. C#读取Excel文档

    上面分别是Excel文档的内容和读取结果: 奉上C#源代码: using System; using System.Data; using System.Data.OleDb; namespace R ...

  5. Java使用poi包读取Excel文档

    项目需要解析Excel文档获取数据,就在网上找了一些资料,结合自己这次使用,写下心得: 1.maven项目需加入如下依赖: <dependency> <groupId>org. ...

  6. NPOI 2.1.1 系列(1) 使用NPOI读取 Excel文档 ;NpoiExcelHelper 导入导出 2003格式 2007格式的 Excel; Npoi 导出 xlsx 格式

    下载地址 http://npoi.codeplex.com/releases 下面放一个 NPOIHelper 助手类吧,也不是我写的- NpoiExcelHelper 可以生成xlsx格式publi ...

  7. 读取EXCEL文档解析工具类

    package test;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException ...

  8. R语言读取Excel文档

    在R语言数据管理(三):数据读写一博文中,我曾写到有关读取xls.xlsx文件时一般将文档改成csv文件读取,这是一般做法.csv文件也有其缺点,修改较为麻烦,当文件数据较大时尤为明显.而生活中必不可 ...

  9. python3读取excel文档数据

    实现场景: 1.读取Excel表数据 2.把数据作为参数传给后面的函数 3.后面的函数循环读取参数执行操作 本案例Excel内容为下图,becks为表名 先贴代码 import xlrd #读取exc ...

随机推荐

  1. Python翻转字符串或者列表的方式

    1. reversed class reversed(object) | reversed(sequence) -> reverse iterator over values of the se ...

  2. Nginx系列2之Nginx+php

    preface 公司所有的大多数业务都泡在LNMP平台上,所以对PHP+Nginx有点了解,那么就做个小小的总结吧. what's FastCGi FastCGI是一个可伸缩,高速的在HTTP ser ...

  3. Yocto开发笔记之《根文件系统裁剪》(QQ交流群:519230208)

    开了一个交流群,欢迎爱好者和开发者一起交流,转载请注明出处. QQ群:519230208,为避免广告骚扰,申请时请注明 “开发者” 字样 =============================== ...

  4. SQL Server 2012 安装

    SQL Server 2012 安装过程很漫长, 里面很多界面不一一截取了,我分别在win7 企业版 64位 和 win10专业版SP1 64位 装了SQL Server 2012 ,都没有问题. 1 ...

  5. 模拟退火解决TSP问题

    // monituihuo.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <stdio.h> #includ ...

  6. IIS------配置.Net 4.0

    转载: http://blog.csdn.net/mazhaojuan/article/details/7660657

  7. docker image重命名

    use docker tag command tag Tag an image into a repository

  8. ntp服务器搭建与客户端设置

    服务器对时间要求非常严格,linux服务器文件的生成,日志,以及数据库的连接都是根据时间的逻辑 进行任务处理,如果时间不同步,那么,处理的任务,以及出问题的分析日志,时间不对,很难分析 直接更改lin ...

  9. 动态规划 求解 Minimum Edit Distance

    http://blog.csdn.net/abcjennifer/article/details/7735272 自然语言处理(NLP)中,有一个基本问题就是求两个字符串的minimal Edit D ...

  10. .net4.0及Silverlight_Tools for vs2008sp1安装失败解决办法

    安装.net framework 4.0失败,出现HRESULT 0xc8000222错误代码 1.开始-运行-输入cmd,运行命令     net stop WuAuServ 2.开始-运行-输入  ...