文档章节

PHPExcel读取excel文件

魏邪乎
 魏邪乎
发布于 2015/08/26 15:28
字数 362
阅读 1328
收藏 2
建议web只做上传功能,读取、处理还是放后台吧。PHPExcel还是比较耗费时间、内存的。

实例代码:

error_reporting(0);
require_once 'PHPExcel_1.8.0/Classes/PHPExcel.php';     //修改为自己的目录
echo '<p>TEST PHPExcel 1.8.0: read xlsx file</p>';
 
$filePath = "cdkey.xlsx";  
 
//建立reader对象  
$PHPReader = new PHPExcel_Reader_Excel2007();  
if(!$PHPReader->canRead($filePath)){  
    $PHPReader = new PHPExcel_Reader_Excel5();  
    if(!$PHPReader->canRead($filePath)){  
        echo 'file is not excel';  
        return ;  
    }  
}  
 
//建立excel对象,此时你即可以通过excel对象读取文件,也可以通过它写入文件  
$PHPExcel = $PHPReader->load($filePath);  
 
/**读取excel文件中的第一个工作表*/  
$currentSheet = $PHPExcel->getSheet(0);  
/**取得最大的列号*/  
$allColumn = $currentSheet->getHighestColumn();  
/**取得一共有多少行*/  
$allRow = $currentSheet->getHighestRow();  
 
//循环读取每个单元格的内容。注意行从1开始,列从A开始  
for($rowIndex=1;$rowIndex<=$allRow;$rowIndex++){  
    for($colIndex='A';$colIndex<=$allColumn;$colIndex++){  
        $addr = $colIndex.$rowIndex;  
        $cell = $currentSheet->getCell($addr)->getValue();  
        if($cell instanceof PHPExcel_RichText)     //富文本转换字符串  
            $cell = $cell->__toString();  
        $arrExcel[$rowIndex][$colIndex]=$cell;       
      
    }  
 
}

//print_r($arrExcel);exit;


PHPExcel_RichText Object(
    [_richTextElements:private] => Array
     (
               [0] => PHPExcel_RichText_TextElement Object ([_text:private] => 测试)
                     [1] => PHPExcel_RichText_Run Object
                     (
                         [_font:private] => PHPExcel_Style_Font Object
                               (
                                    [_name:private] => Calibri
                                        [_size:private] => 11
                                        [_bold:private] =>
                                        [_italic:private] =>
                                        [_superScript:private] =>
                                        [_subScript:private] =>
                                        [_underline:private] => none
                                        [_strikethrough:private] =>
                                        [_color:private] => PHPExcel_Style_Color Object
                                        (
                                            [_argb:private] => FF000000
                                            [_isSupervisor:private] =>
                                            [_parent:private] =>
                                            [_parentPropertyName:private] =>
                                        )
                                        [_parentPropertyName:private] =>
                                        [_isSupervisor:private] =>
                                        [_parent:private] =>
                                        [colorIndex] => 8
                                    )
                                    [_text:private] => 1
                                )
                        )
                )

可以看到对这样的单元格不能直接读取单元格的文本内容。(注:这里的富文本是我自己的翻译,不知对否)。

另外,读取单元格的函数还有:

//列从0开始,行从1开始

$currentSheet ->getCellByColumnAndRow($colIndex,$rowIndex)->getValue();


本文转载自:http://yang2012php.iteye.com/blog/1701024

魏邪乎
粉丝 6
博文 80
码字总数 21516
作品 0
保定
私信 提问
phpexcel导入导出excel文件常用操作

web程序开发的时候,经常有关于操作Excel的需求.PHPExcel类是我用过的比较实用的工具[当然,除了那惊人的内存占用].PHPExcel本身的tar包里面已经有非常详细的demo,在这里我记录我使用到的一些工...

binzone
2014/04/20
1K
0
phpexcel load 模板文件出现问题

想实现的功能: 用phpexcel去读取一个excel模板,然后每次点击都是把读取到得数据依照此模板来填充其中一些项。 遇到的问题: 用一个1.2M的自己随意建的excel模板,读取和写入都是没有问题,...

skip
2012/11/28
3.1K
0
phpExcel导出大量数据出现内存溢出错误的解决方法

我们经常会使用phpExcel导入或导入xls文件,但是如果一次导出数据比较大就会出现内存溢出错误,下面我来总结解决办法 phpExcel将读取的单元格信息保存在内存中,我们可以通过 复制代码代码如下...

蜗牛奔跑
2015/07/17
497
0
使用phpExcel实现Excel数据的导入导出(完全步骤)

很多文章都有提到关于使用phpExcel实现Excel数据的导入导出,大部分文章都差不多,或者就是转载的,都会出现一些问题,下面是本人研究phpExcel的使用例程总结出来的使用方法,接下来直接进入...

daniel-john
2014/03/23
1K
0
phpexcel读取excel文件的列数,读取到空白列

关于phpexcel读取excel文件列数问题 我在读取excel文件列数,使用phpexcel类,伪代码如下 但经常读取到的数据会多一列,将excel最后的空白行清空删除,读取到的数据仍然是多的,比如共有R列数...

binzone
2014/06/16
8.6K
2

没有更多内容

加载失败,请刷新页面

加载更多

为什么要在网站中应用CDN加速?

1. 网页加载速度更快 在网站中使用CDN技术最直接的一个好处就是它可以加快网页的加载速度。首先,CDN加速的内容分发是基于服务器缓存的,由于CDN中缓存了不少数据,它能够给用户提供更快的页...

云漫网络Ruan
36分钟前
7
0
亚玛芬体育(Amer Sports)和信必优正式启动合作开发Movesense创新

亚玛芬体育和信必优正式启动合作开发Movesense创新,作为亚玛芬体育的完美技术搭档,信必优利用Movesense传感器技术为第三方开发移动应用和服务。 Movesense基于传感器技术和开放的API,测量...

symbiochina88
47分钟前
4
0
创龙TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA核心板规格书

SOM-TL437xF是一款广州创龙基于TI AM437x ARM Cortex-A9 + Xilinx Spartan-6 FPGA芯片设计的核心板,采用沉金无铅工艺的10层板设计,适用于高速数据采集和处理系统、汽车导航、工业自动化等领...

Tronlong创龙
47分钟前
4
0
好程序员Java学习路线分享MyBatis之线程优化

  好程序员Java学习路线分享MyBatis之线程优化,我们的项目存在大量用户同时访问的情况,那么就会出现大量线程并发访问数据库,这样会带来线程同步问题,本章我们将讨论MyBatis的线程同步问...

好程序员官方
53分钟前
6
0
IDEA 自定义方法注解模板

IDEA 自定义方法注解模板 1、使用效果 /*** 计算交易费用* @Author wangjiafang* @Date 2019/9/11* @param feeComputeVo* @return*/@PostMapping("/v1/fee_compute")public ApiResp......

小白的成长
53分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部