phpexcle在thinkphp3.2.3下的导入导出数据

首先下载一个phpexcle,将其解压讲文件夹放在THinkPHP/Library/Vendor/Phpexcle 下,因为有命名空间的存在,在引用扩展类的时候一定要记得加  \

import("Org.Util.PHPExcel");
  //要导入的xls文件,位于根目录下的Public文件夹
  $filename="./Public/1.xlsx";
  //创建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);
这段代码为讲在public下的1.xlsx excle表中的数据读取出来,并且存入到数组$arr中,有了数组我们就可以进行一些详细的操作。

数据导入excle表,一般会出现的问题为打印乱码,首先要保证的是在excle输出前,没有其他打印信息。检查头部header("Content-Typ:text/html;charset=utf-8");是否有写,如果还未生效,则在
header('Content-Type:application/vnd.ms-excel');
 header('Content-Disposition:attachment;filename="Stock.xls"');
 header('Cache-Control: max-age=0');
输出前添加 ob_end_clean();//清除缓冲区,避免乱码,具体的phpexcle格式文档可详细参考http://www.cnblogs.com/freespider/p/3284828.html。记得加 \ ,路径配置对,问题不大。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值