文章目录

  • 前言
  • 一、PHPExcel库下载
  • 二、Excel读取
    • 1.引入库
    • 2.创建Reader
    • 3.Excel读取和遍历
  • 三、导出数据至Excel
    • 1.导出接口
    • 2.接口调用
  • 总结

前言

excel作为办公环境中最常用的数据处理工具,使用的人群很广泛。但当你有一些比较复杂的处理场景时,仅靠一些表面的简单的操作肯定是满足不了要求的。这时如果让我临时学习vba编程,感觉有点难度,因为我只会C和PHP,于是借这个机会,我查阅了一些资料,发现PHP有开源的工具库PHPExcel,功能很强大,很实用。


以下介绍了如何使用PHPExcel实现excel读取和导出数据库表至excel里面,相信会对大家有所帮助。

一、PHPExcel库下载

点击进入如下GitHub地址,点击Code=>Download ZIP,下载PHPExcel-1.8.zip

PHPExcel库下载地址

二、Excel读取

1.引入库

代码如下(示例):

    require_once 'PHPExcel.php';require_once 'PHPExcel/IOFactory.php';require_once 'PHPExcel/Reader/Excel2007.php';require_once 'PHPExcel/Reader/Excel5.php';require_once 'PHPExcel/Reader/CSV.php';

2.创建Reader

代码如下(示例):

        if(strstr($shoolFile, ".xlsx")){$objReader = PHPExcel_IOFactory::createReader('Excel2007');}else if(strstr($shoolFile, ".xls")){$objReader = PHPExcel_IOFactory::createReader('Excel5');}else if(strstr($shoolFile, ".csv")){$csvReader = PHPExcel_IOFactory::createReader('CSV')->setDelimiter(',')->setInputEncoding('GBK');}

3.Excel读取和遍历

代码如下(示例):

        $objPHPExcel = $objReader->load($shoolFile);$sheet = $objPHPExcel->getSheet(0); $total_line = $sheet->getHighestRow(); // 取得总行数 for($row = 2; $row <= $total_line; $row++) {            $name   = trim($objPHPExcel->getActiveSheet()->getCell('D'.$row)->getValue());$sex    = trim($objPHPExcel->getActiveSheet()->getCell('E'.$row)->getValue());$nature = trim($objPHPExcel->getActiveSheet()->getCell('F'.$row)->getValue());            }

三、导出数据至Excel

1.导出接口

代码如下(示例):

//导出接口
/*$data:数据库查询结果$savefile:保存的文件名$fileheader:表头$sheetname:表单名
*/
function exportExcel($data, $savefile, $fileheader, $sheetname){$excel = new PHPExcel();$objActSheet = $excel->getActiveSheet();$letter = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z','AA');$excel->setActiveSheetIndex(0);$objActSheet->setTitle($sheetname);for($i = 0;$i < count($fileheader);$i++) {$objActSheet->setCellValue("$letter[$i]1",$fileheader[$i]);                 }for ($i = 2;$i <= count($data) + 1;$i++) {$j = 0;foreach ($data[$i - 2] as $key=>$value) {$objActSheet->setCellValue("$letter[$j]$i",$value);$j++;}}header('Content-Type: application/vnd.ms-excel');header('Content-Disposition: attachment;filename="' . $savefile . '.xlsx"'); header('Cache-Control: max-age=0');$objWriter = PHPExcel_IOFactory::createWriter($excel, 'Excel2007');$objWriter->save('php://output');}

2.接口调用

    $connection=  mysqli_connect('a.b.c.d','aaa','bbb','ccc');if($connection){if($query = mysqli_query($connection,"select *from aaa_info ")){$data = mysqli_fetch_all($query,MYSQLI_ASSOC);$fileheader= array('a', 'b', 'c','d', 'e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','aa'); exportExcel($data,'调试信息',$fileheader,'Sheet1');mysqli_free_result($query);}mysqli_close($connection);}

总结

以上就是今天要讲的内容,本文仅仅介绍了使用php读取excel,并介绍了如何将数据库表导出至excel。

PHP读取Excel和导出数据至Excel相关推荐

  1. php上传和导出excel文件,(进阶篇)使用PHP导入Excel和导出数据为Excel文件

    有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入. 1.导入XLS PHP-ExcelReader这是一个 ...

  2. C#基于Npoi通过特性的方式导出简单数据到Excel或基于特性以及基于Excel模板导出数据到Excel以及从Excel中把数据导入到对象中

    导出数据到Excel表格以及从Excel表格中读取数据是我们日常开发很多情况都会遇到的,这里或许只是导出一些简单的数据到excel,这里或许会按照一定的模板导出数据到excel,这里也可能需要从Exc ...

  3. 使用PHP导入Excel和导出数据为Excel文件

    有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入.另外将mysql数据导出为Excel与本站上篇文章中导出 ...

  4. php导入excel中文手册,使用PHP导入Excel和导出数据为Excel文件

    有时需要将Excel表格的数据导入到mysql数据库中,我们使用PHP的一个开源项目PHP-ExcelReader可以轻松实现Excel的导入.另外将mysql数据导出为Excel与本站上篇文章中导出 ...

  5. js+excel+mysql_js导出数据到excel

    方式一 var jsonData = [ { name:'路人甲', phone:'123456', email:'123@123456.com' }, { name:'炮灰乙', phone:'12 ...

  6. Qt导出数据到excel

    Qt导出数据到excel Qt导出数据到excel,方法有很多,Qt里也有自带的axcontainer模块中的#include<QAxObject>类可以导出数据到excel,但是这种方法 ...

  7. java 从excel中读取数据_在Java中读取Excel文件的内容和导出数据到Excel文件中

    转自www.chianjavaworld.net 原作者:SonyMusic 读:rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr 在Java ...

  8. arcengine遍历属性表_【程序之坑】小程序云开发导出数据到excel表

    本文解决了小程序云开发导出数据到excel的bug,并给出了分析的过程,同时简化了程序为一个云函数,一个本地函数,逻辑更简单.文章结尾给出了完整源代码 小程序云开发为没有服务器的小程序开发者提供了便利 ...

  9. 从DataTable高效率导出数据到Excel

    首先从数据库读取数据到DataTable,这我就不提了,大家都明白.下面直接介绍如何从DataTable高效率导出数据到Excel中的方法,代码如下: 1 using Microsoft.Office ...

  10. 如何导出数据到Excel表格

    开发工具与关键技术:Visual Studio.MVC 作者:幻奏 撰写时间:2019.5.5 我们在日常的生活中常常会看到很多的数据,有时,我们不一定只是在项目里面看到数据,可能我们还要在其他的地方 ...

最新文章

  1. 马思伟:视频领域是个海洋,可以游泳、冲浪、潜水和远航
  2. netty为什么性能高
  3. 再砸67亿!本硕博都给钱!该市带头抢人!
  4. 揭秘!月薪30K的大牛到底看了哪些视频?【共2000G】
  5. NOI题库 7654 等差数列末项计算
  6. AIX 文件操作和AIX 目录操作
  7. 追求极致速度,极简多模态预训练模型ViLT,推理速度比UNITER快60倍!(ICML2021)...
  8. 机器学习,总是不得其法,问题出在哪里?
  9. php不兼容_怎么解决php不兼容问题
  10. PL/SQL Developer使用技巧、快捷键(转发)
  11. 百度测试linux面试题,【百度百度Linux面试题】面试问题:Linux查看… - 看准网
  12. java实现数据库回滚,java 数据库操作,事宜回滚
  13. 详细完整MySQL8.0.23安装教程
  14. 监控和路由器不在同一个ip段_如何把二级路由器当交换机使用
  15. 你以为你了解Kaggle吗?| 超级干货
  16. 河北科技师范学院对口计算机分数线,河北科技师范学院对口分数线
  17. 关于《网上购书系统》
  18. kali linux学习手册,Kali Linux学习手册
  19. WebStorm、Idea使用git账户密码重置
  20. Debugging Tools for Windows (WinDbg)的使用

热门文章

  1. Visual Studio2010安装教程
  2. 超宽屏幕比例_显示器屏幕比例与分辨率对照表
  3. 使用js实现预览上传的图片
  4. 【线性代数】P6 矩阵的幂转置特殊矩阵
  5. 解决andr_Android和iPhone浏览器大战,第2部分,为iPhone和Android构建基于浏览器的应用程序
  6. PHP通用网站后台管理系统
  7. 股票交易费用精确计算器
  8. EasyCVR调用Ehome协议接入的硬盘录像机设备录像无法播放,如何处理?
  9. php键盘输入函数,基础篇php常用输入语句和函数
  10. json文件转Excel