您的位置:首页 > 编程语言 > PHP开发

thinkphp实现excel的导入与导出

2016-09-21 15:15 429 查看
由于thinkphp3.2使用命名空间,而 PHPExcel没有使用,那么两者整合的最重要问题就是如何导入的问题。

一、PHPExcel.php和PHPExcel文件夹都放在ThinkPHP/Library/Org/Util下,PHPExcel.php修改为PHPExcel.class.php。

二、

public function index(){

//导入PHPExcel类库,因为PHPExcel没有用命名空间,只能inport导入

import("Org.Util.PHPExcel");

//要导入的xls文件,位于根目录下的Public文件夹

$filename="./Public/1.xls";

//创建PHPExcel对象,注意,不能少了\

$PHPExcel=new \PHPExcel();

//如果excel文件后缀名为.xls,导入这个类

import("Org.Util.PHPExcel.Reader.Excel5");

//如果excel文件后缀名为.xlsx,导入这下类

//import("Org.Util.PHPExcel.Reader.Excel2007");

//$PHPReader=new \PHPExcel_Reader_Excel2007();

$PHPReader=new \PHPExcel_Reader_Excel5();

//载入文件

$PHPExcel=$PHPReader->load($filename);

//获取表中的第一个工作表,如果要获取第二个,把0改为1,依次类推

$currentSheet=$PHPExcel->getSheet(0);

//获取总列数

$allColumn=$currentSheet->getHighestColumn();

//获取总行数

$allRow=$currentSheet->getHighestRow();

//循环获取表中的数据,$currentRow表示当前行,从哪行开始读取数据,索引值从0开始

for($currentRow=1;$currentRow<=$allRow;$currentRow++){

//从哪列开始,A表示第一列

for($currentColumn='A';$currentColumn<=$allColumn;$currentColumn++){

//数据坐标

$address=$currentColumn.$currentRow;

//读取到的数据,保存到数组$arr中

$arr[$currentRow][$currentColumn]=$currentSheet->getCell($address)->getValue();

}

}

dump($arr);

}

github实例demo
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: