相关文章推荐
腼腆的跑步鞋  ·  甘雨落尽始刻晴的个人空间-甘雨落尽始刻晴个人 ...·  7 月前    · 
坚强的打火机  ·  给《黑神话》打8分的IGN编辑,开始直呼真香 ...·  8 月前    · 
光明磊落的花生  ·  招魂3 - 搜狗图片搜索·  1 年前    · 
帅气的松球  ·  西吉县强化法治建设助力乡村振兴-宁夏新闻网·  1 年前    · 
气宇轩昂的鼠标垫  ·  提醒 | 下月,天津—大兴机场大巴发车时间调整!·  1 年前    · 
小百科  ›  PHP输入Excel文件内容-腾讯云开发者社区-腾讯云
php 电子表格 phpexcel
寂寞的海豚
1 年前
作者头像
大江小浪
0 篇文章

PHP读取Excel文件内容

前往专栏
腾讯云
开发者社区
文档 意见反馈 控制台
首页
学习
活动
专区
工具
TVP
文章/答案/技术大牛
发布
首页
学习
活动
专区
工具
TVP
返回腾讯云官网
社区首页 > 专栏 > 小狼的世界 > PHP读取Excel文件内容

PHP读取Excel文件内容

作者头像
大江小浪
发布 于 2018-07-24 17:39:04
2.6K 0
发布 于 2018-07-24 17:39:04
举报

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

PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader。但是可惜的是不能够支持Excel 2007的格式(.xlsx)。

PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍下如何使用PHPExcel进行Excel 2007格式(.xlsx)文件的读取。

下载PHPExcel后保存到自己的类文件目录中,然后使用以下代码可以打开Excel 2007(xlsx)格式的文件:

require_once '/libs/PHPExcel-1.8.0/Classes/PHPExcel.php';     //修改为自己的目录
echo '<p>TEST PHPExcel 1.8.0: read xlsx file</p>';
$objReader = PHPExcel_IOFactory::createReaderForFile($filename); 
$objPHPExcel = $objReader->load($filename);
$objPHPExcel->setActiveSheetIndex(1);
$date = $objPHPExcel->getActiveSheet()->getCell('A16')->getValue();

输出$date变量就能够看到文件中的内容了。PHPExcel使用PHPExcel_IOFactory这个类来自动匹配所上传的文件类型,当然我们也可以自己制定要解析的文件类型。之后通过load方法,将PHP文件加载到objPHPExcel对象中。如果Excel文件有多个Sheet,可以通过setActiveSheetIndex来设置当前活动的Sheet。如何通过Sheet名来获得当前Sheet我还不知道,如果有知道的可以站内我。

需要注意的是,对于Excel中的日期格式,PHPExcel读出来的是不是日期类型,需要我们使用以下方法来进行日期类型转换。

echo date("Y-m-d H:i:s",PHPExcel_Shared_Date::ExcelToPHP($date));

下面的代码显示了如何遍历显示Excel的内容:

 1 <table id="table_id">
 2 <?php
 3      $objWorksheet = $objPHPExcel->getActiveSheet();
 4      $i = 0;
 5      foreach($objWorksheet->getRowIterator() as $row){
 6      ?>
 8           <?php
 9                $cellIterator = $row->getCellIterator();
10                $cellIterator->setIterateOnlyExistingCells(false);
12                     if( $i == 0 ){
13                          echo '<thead>';
14                     }
15                foreach($cellIterator as $cell){
17                     echo '<td>' . $cell->getValue() . '</td>';
19                }
20                     if( $i == 0 ){
21                          echo '</thead>';
22                     }
23                $i++;
 
推荐文章
腼腆的跑步鞋  ·  甘雨落尽始刻晴的个人空间-甘雨落尽始刻晴个人主页-哔哩哔哩视频
7 月前
坚强的打火机  ·  给《黑神话》打8分的IGN编辑,开始直呼真香-虎嗅网
8 月前
光明磊落的花生  ·  招魂3 - 搜狗图片搜索
1 年前
帅气的松球  ·  西吉县强化法治建设助力乡村振兴-宁夏新闻网
1 年前
气宇轩昂的鼠标垫  ·  提醒 | 下月,天津—大兴机场大巴发车时间调整!
1 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
小百科 - 百科知识指南
© 2024 ~ 沪ICP备11025650号