ThinkPHP框架下读取excel数据的方法示例

原创 2016年08月31日 16:33:56

在ThinkPHP框架下,读取excel数据的方法示例:

在操作前,应该在系统框架的扩展目录中添加ORG库,即要包含\ThinkPHP\Extend\Library\ORG\Excel\Spreadsheet_Excel_Reader.class.php文件及其相关支持文件。

<?php
header("Content-type: text/html; charset=utf-8");
class MesTestAction extends Action {
    //读取excel
    public function testReadExcel(){
        $filename = $_FILES['filexls']['tmp_name'];
        if ( empty($filename) ) {
            $this->error('上传文件不能为空');
            error_reporting(6135);
        } else {
            echo '文件临时名称: '.$filename.'<br/>';
        }
        
        import("ORG.Excel.Spreadsheet_Excel_Reader");
        $data = new Spreadsheet_Excel_Reader();
        $data->setOutputEncoding('utf-8');
        $data->read($filename);        
        $sheetNum = count($data->sheets);
        if ( ! $sheetNum ) {//sheet页数为0
            $this->error('文件内容不能为空!');
        } else {
            echo 'sheet总页数: '.$sheetNum.'<br/>';
        }

        for ( $j = 0; $j < $sheetNum; ++$j) {
            echo '第'.($j + 1).'页,'; //var_dump($data->sheets[$j]);die('as');
            $arrsrc = $data->sheets[$j]['cells'];
            array_shift($arrsrc); //去除excel第一行标头
            $counts = count($arrsrc);   //总条数
            if ($counts == 0) {
                echo '无有效数据'.'<br/>';
            }else{
                echo '行数'.$counts.'<br/>';
                foreach ($arrsrc as $keyRow => $valueRow) {
                    if ( is_array($valueRow) ) {
                        foreach ($valueRow as $keyCol => $valueCol) {
                            echo $valueCol.'    ';
                        }
                        echo '<br/>';
                    } else {
                        echo $valueRow.'<br/>';
                    }
                }
            }
        }        
    }
}
?>


测试时使用的html页面代码为:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>测试excel解析</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="renderer" content="webkit" />
</head>
<body>
<!-- content -->
<div class="wbBox" style="background:#fff">
<form method="post" action="/WebDocument/App/Message/index.php/MesTest/testReadExcel" enctype="multipart/form-data" >
	<input type="file" name="filexls" id="file11" onchange="document.getElementById('filename').value=this.value;" style=" padding:0; "/>
	<input id="filename" type="text" />
	<label for="file11" id="upshow" type="button" />浏览 </label>
</form>
</body>
</html>



php 和thinkphp 对excel操作

php对excel的操作主要通过引入 excel_reader2.php 或者是PHPExcel 类进行   两个文件自行下载 php 对其读操作:  文件目录结构   excel_reader2.p...

thinkphp实现excel数据的导入导出

首先需要确认项目内是否存在 ThinkPHP/Library/Org/Util/PHPExcel ThinkPHP/Library/Org/Util/PHPExcel.class.php //模板代码...

thinkphp3.2读取Excel文件

由于thinkphp3.2使用命名空间,而 PHPExcel没有使用,那么两者整合的最重要问题就是如何导入的问题。 PHPExcel.php和PHPExcel文件夹都放在ThinkPHP/Libra...

ThinkPHP框架下导出excel数据的方法示例

在ThinkPHP框架下,导出excel数据的方法示例: 在操作前,应该在系统框架的扩展目录中添加ORG库,即要包含ThinkPHP\Extend\Library\ORG\Util\PHPExcel....

ThinkPHP Excel导入导出示例

ThinkPHP官方的帖子感觉写的很含糊,还是借鉴了另外

ThinkPHP3.2.3框架示例

  • 2016年02月19日 11:35
  • 1.34MB
  • 下载

JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法示例

以下是Java对几种文本文件内容读取代码。其中,OFFICE文档(WORD,EXCEL)使用了POI控件,PDF使用了PDFBOX控件。   点击这里 查看相关控件的下载地址和配置方法。 ...

JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法示例

来自:http://blog.csdn.net/zlb824/article/details/7020191 以下是Java对几种文本文件内容读取代码。其中,OFFICE文档(WORD,EX...

JAVA读取WORD,EXCEL,PDF,TXT,RTF,HTML文件文本内容的方法示例

以下是Java对几种文本文件内容读取代码。其中,OFFICE文档(WORD,EXCEL)使用了POI控件,PDF使用了PDFBOX控件。 WORD: package textReader; ...
  • zlb824
  • zlb824
  • 2011年11月28日 16:52
  • 1222
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ThinkPHP框架下读取excel数据的方法示例
举报原因:
原因补充:

(最多只允许输入30个字)