开发者社区> 大江小浪> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

PHP读取Excel文件内容

简介: 项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel。   PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader。
+关注继续查看

项目需要读取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读出来的是不是日期类型,需要我们使用以下方法来进行日期类型转换。
 
 
下面的代码显示了如何遍历显示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>

 

 
参考资料:

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
php导入excel的图片
php导入excel的图片
0 0
php-读取excel文件
php-读取excel文件
0 0
PHP:PhpSpreadsheet实现Excel的读取和写入
PHP:PhpSpreadsheet实现Excel的读取和写入
0 0
nginx做负载均衡,转发给后端apache+php,下载excel行数超过5万报错
nginx做负载均衡,转发给后端apache+php,下载excel行数超过5万报错
0 0
php导出excel,使用table,如何让首位是0的纯数字字符串保留首位的0
php导出excel,使用table,如何让首位是0的纯数字字符串保留首位的0
0 0
+关注
大江小浪
平心静气,破浪劈坚!
文章
问答
文章排行榜
最热
最新
相关电子书
更多
PHP安全开发_从白帽角度做安全
立即下载
PHP在机器学习上的应用及云深度学习平台的架构设计与实现
立即下载
PHP与APM_技术内幕和最佳实践
立即下载