ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)

☞ 背景

  • 这两天在开发快递查询的功能时,涉及到了 Excel表导入MySQL 的操作,为了方便后期的快捷使用,在此整理一下 PHPExcelexcel 表导入导出的代码解决步骤,希望能帮到有需要的道友们...

框架:ThinkPHP5.1
类库:PHPExcel
技能:Composer,MySql

☞ 前期准备:PHPExcel 类库的获取

第一种方式为:使用 Composer 进行安装;
第二种方式为:直接到【Github·PHPOffice/PHPExcel】下载源包
后者需要注意,将压缩包解压后放到vendor目录,并且注意路径的正确引入
此处,只做第一种方式的指导参考 [建议学会Composer的简单使用,实在是太方便了]

  • 进入项目目录,输入命令: composer require phpoffice/phpexcel
    ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第1张图片

    安装成功后,会注意到项目的vendor目录下,多出了一个phpoffice文件夹

☞ 如何将 Excel中的数据导入MySQL

除了参考我展示的步骤,也要注意下我的代码注释哦!

①. excel 文件的整理

首先要求用来导入MySQL 数据表的 excel文件中的内容要规整,对应于你的数据表

  • 鄙人将其放置于目录public\cms\file\bird_express.xlsx

以我要操作的 excel表为例,(==数据简单,可举一反三,自由拓展==):

ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第2张图片

②. 创建目标数据表

  • 以我的简答测试为例,表格设计如下:


    ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第3张图片

③. MTPhpExcel类的使用

  • 首先引入所提供源码中的 MTPhpExcel.php
    下图即为我创建的 ==测试入口==,主要目的就是为了调用核心方法 readExcelFileToArray()
    ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第4张图片

核心处理方法 readExcelFileToArray() 源码见附录

  • 运行代码后的结果如下:


    ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第5张图片

☞ 如何将数据导出到Excel文件 ☜

  • 同理,我设计了一个测试方法,主要目的就是为了调用核心方法 outputDataToExcelFile()
    ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第6张图片

核心处理方法 outputDataToExcelFile() 源码见附录

  • 运行代码后,可以得到如下的一个 excel 表:
    ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第7张图片
  • 【温馨提示:】
1. 为了代码参考方便,鄙人尽量使其简洁化
   所以如果对于某列数据需要字体加粗、居中、变大等各种操作,可自行扩展
2. 当前代码,未做图片格式的展示处理
   如有需要可阅读 phpexcel 文档规则,根据目标数据对应性处理即可 ...

☞ 附录

☛ >>>源码下载>>> ☚

  • 主要使用的就是其中的 MTPhpExcel
    ThinkPHP5.1 excel表的导入导出操作 (PHPExcel)_第8张图片
    image

☛ 参考文章

  • phpexcel导入excel文件报the filename xxx is not recognised as an OLE file错误
  • thinkphp5导出xls表格
  • ThinkPHP5.1使用PHPExcel进行数据的导入导出

你可能感兴趣的:(ThinkPHP5.1 excel表的导入导出操作 (PHPExcel))