PHPExcel 是用来操作Office Excel 文档的一个PHP类库,它基于微软的OpenXML标准和PHP语言。可以使用它来读取、写入不同格式的电子表格。整体来说是一个不错的Excel操作类。

首先利用该类我们可以实现两个功能

1、将Excel里面的数据进行读取,导进MySQL

2、我们把统计的数据信息导出到Excel表格 实现数据的统计

第一步 我们先下载PHPExcel类库 下载地址

链接地址https://github.com/PHPOffice/PHPExcel

链接地址https://codeload.github.com/PHPOffice/PHPExcel/zip/1.8

因为当时我用的是YII1.1框架,我直接把PHPExcel类放在类文件里面,然后在配置文件进行引入,之后可以直接引用

1.将Excel数据提取出来,插入MySQL入库操作

 //导出Excel到数据库public function actionExport(){$dir = dirname(__FILE__);  //找出当前脚本所在路径//找出要导出的Excel文件$inputFileName = $dir.'/../service/excel/data2.xlsx';date_default_timezone_set('PRC');// 读取excel文件try {$inputFileType = PHPExcel_IOFactory::identify($inputFileName);$objReader = PHPExcel_IOFactory::createReader($inputFileType);$objPHPExcel = $objReader->load($inputFileName);} catch(Exception $e) {die('加载文件发生错误:"'.pathinfo($inputFileName,PATHINFO_BASENAME).'": '.$e->getMessage());}// 确定要读取的sheet,什么是sheet,看excel的右下角,真的不懂去百度吧$sheet = $objPHPExcel->getSheet(0);$highestRow = $sheet->getHighestRow();$highestColumn = $sheet->getHighestColumn();$tmp =[];// 获取一行的数据for ($row = 1; $row <= $highestRow; $row++){// Read a row of data into an array$rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, NULL, TRUE, FALSE);//这里得到的rowData都是一行的数据,得到数据后自行处理,我们这里只打出来看看效果// var_dump($rowData);// echo "<br>";$tmp[] = $rowData[0];}//打印Excel里面信息的数组print_r($tmp);}

2、将数据写入到Excel表格里面

 //将数据倒进Excel比表格public function actionExportinto($arr){$dir = dirname(__FILE__);  //找出当前脚本所在路径/** Error reporting */error_reporting(E_ALL);ini_set('display_errors', TRUE);ini_set('display_startup_errors', TRUE);date_default_timezone_set('PRC');/** 引入PHPExcel */require_once $dir.'/../service/excel/PHPExcel.php';// 创建Excel文件对象$objPHPExcel = new PHPExcel();// 设置文档信息,这个文档信息windows系统可以右键文件属性查看$objPHPExcel->getProperties()->setCreator("作者简庆旺")->setLastModifiedBy("最后更改者")->setTitle("文档标题")->setSubject("文档主题")->setDescription("文档的描述信息")->setKeywords("设置文档关键词")->setCategory("设置文档的分类");//根据excel坐标,添加数据$objPHPExcel->setActiveSheetIndex(0)->setCellValue('A1', '推荐人ID')->setCellValue('B1', '推荐人昵称')->setCellValue('C1', '直接推荐人数')->setCellValue('D1', '参与推广率')->setCellValue('E1', '任务完成率');$key = 1;/*以下就是对处理Excel里的数据,横着取数据*/foreach($arr as $v){//设置循环从第二行开始$key++;$objPHPExcel->getActiveSheet()//Excel的第A列,name是你查出数组的键值字段,下面以此类推->setCellValue('A'.$key, $v['openid']) ->setCellValue('B'.$key, $v['name'])->setCellValue('C'.$key, $v['num'])->setCellValue('D'.$key, $v['tg'])->setCellValue('E'.$key, $v['wc']);}// 重命名工作sheet$objPHPExcel->getActiveSheet()->setTitle('第二个sheet');// 设置第一个sheet为工作的sheet$objPHPExcel->setActiveSheetIndex(0);// 保存Excel 2007格式文件,保存路径为当前路径,名字为export.xlsx$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007');//数据存放位置$objWriter->save($dir.'/../service/export5.xlsx');// // 保存Excel 95格式文件,,保存路径为当前路径,// $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');// $objWriter->save('export.xls');}

因为我是写在Yii框架控制器里面的,各自一个方法,导进去Excel只需传数组就OK

利用PHPExcel实现数据的导入导出相关推荐

  1. php导入excel源码,利用PHPExcel类库,实现PHP导出导入Excel表格Excel文件!

    [温馨提示]源码包解压密码:www.youhutong.com 利用PHPExcel类库,实现PHP导出导入Excel文件!(案例教程源码) 需要注意的地方就是: 1.导出文件时,如果你的字段过多,可 ...

  2. PHP 利用PHPExcel到处数据到Excel;还有导出数据乱码的解决方案。

    PHP 利用PHPExcel到处数据到Excel:还有导出数据乱码的解决方案. 参考文章: (1)PHP 利用PHPExcel到处数据到Excel:还有导出数据乱码的解决方案. (2)https:// ...

  3. 使用Oracle 的 imp ,exp 命令实现数据的导入导出

    本文对Oracle数据的导入导出 imp ,exp 两个命令进行了介绍, 并对其相应的参数进行了说明,然后通过一些示例进行演练,加深理解. 文章最后对运用这两个命令可能出现的问题(如权限不够,不同or ...

  4. MATLAB中文件的读写和数据的导入导出

    http://blog.163.com/tawney_daylily/blog/static/13614643620111117853933/ 在编写一个程序时,经常需要从外部读入数据,或者将程序运行 ...

  5. docker导入MySQL文件_Docker容器中Mysql数据的导入/导出详解

    前言 Mysql数据的导入导出我们都知道一个mysqldump命令就能够解决,但如果是运行在docker环境下的mysql呢? 解决办法其实还是用mysqldump命令,但是我们需要进入docker的 ...

  6. 循序渐进开发WinForm项目(5)--Excel数据的导入导出操作

    随笔背景:在很多时候,很多入门不久的朋友都会问我:我是从其他语言转到C#开发的,有没有一些基础性的资料给我们学习学习呢,你的框架感觉一下太大了,希望有个循序渐进的教程或者视频来学习就好了. 其实也许我 ...

  7. 蓄力-利用POI进行excel的导入导出(包含图片)

    这里写自定义目录标题 利用POI进行excel的导入导出 引入的jar包 excel导入 主方法: 将excel里面的图片转成数据 xls格式 xlsx格式 将图片数据转成字节流的方式传输到FTP服务 ...

  8. 利用EasyExecl对execl进行导入导出

    利用EasyExecl对execl进行导入导出 EasyExecl官方文档: https://www.yuque.com/easyexcel/doc/easyexcel 一.前言 这是我写的一个Eas ...

  9. oracle导出对象和数据,浅析Oracle对象和数据的导入导出

    对于Oracle对象和数据的导入导出,我们会用到一些小工具.以前我们一般都是使用PL/SQL Developer来实现,但是PL/SQL Developer在导出.导入数据时有两个问题: 1.要把表数 ...

最新文章

  1. 的g极串一个电阻_Ohm#39;s Law 简单系列D:从惠斯通(会石头)测电阻开始说
  2. “约见”面试官系列之常见面试题第二十九篇之Vue和React的区别
  3. 【CodeForces - 1150A】Stock Arbitraging (贪心,水题)
  4. Linux中zsh插件,ubuntu / zsh shell / oh-my-zsh / 常用插件
  5. IBM HMC V7R740虚拟机安装实战
  6. 游戏即人生——《DOOM启世录》书评
  7. java B2B2C 源码 多级分销Springcloud多租户电子商城系统-Spring Cloud eureka
  8. 腾讯信鸽推送,部分手机不能接收到推送弹窗
  9. 用Python爬了微信好友,原来他们是这样的人...
  10. 网易有道最新力作 有道词典笔3 结构拆解
  11. FastAPI 是什么?
  12. flask 登出功能
  13. oracle datafile损坏,Oracle某个数据文件损坏,如何打开数据_oracle
  14. 心情是一盏温茶的宁静
  15. 【每日蓝桥】12、一三年省赛Java组真题“振兴中华”
  16. WordPress文章标题显示汉字方法
  17. 项目管理相关认证简要介绍(1)- 体系
  18. 【STM32】基于IWDG实现复位(手动喂狗)功能
  19. 读书笔记: C# 7.0 in a nutshell (第 三 章 Creating Types in C#)
  20. 转载的,给大家分享,,希望有用

热门文章

  1. CentOS 7查看自己IP地址方法
  2. 网站HTTP升级为HTTPS
  3. 淘客必看的抖音引流到微信的方案
  4. Hxbuilder连接安卓模拟器
  5. 人工智能成行业下一战场 中腾信实现催收领域智能质检
  6. jquery点击加号多图上传插件
  7. 智能访客的方案和功能
  8. (OSError: Unable to open file (unable to open file: name = ‘model_3.h5’, errno = 2, error message =
  9. HDU 6208 The Dominator of Strings AC自动机
  10. javafx 图片作按钮_JavaFX按钮添加图标的方法