ThinkPHP5.1 excel表的导入导出操作 (PHPE
2019-04-25 本文已影响3人
泥豆芽儿MT
☞ 背景
- 这两天在开发快递查询的功能时,涉及到了
Excel表导入MySQL
的操作,为了方便后期的快捷使用,在此整理一下PHPExcel
对excel
表导入导出的代码解决步骤,希望能帮到有需要的道友们...
框架:
ThinkPHP5.1
类库:PHPExcel
技能:Composer
,MySql
☞ 前期准备:PHPExcel
类库的获取
第一种方式为:使用
Composer
进行安装;
第二种方式为:直接到【Github·PHPOffice/PHPExcel】下载源包
后者需要注意,将压缩包解压后放到vendor
目录,并且注意路径的正确引入
此处,只做第一种方式的指导参考[建议学会Composer的简单使用,实在是太方便了]
- 进入项目目录,输入命令:
composer require phpoffice/phpexcel
安装成功后,会注意到项目的vendor
目录下,多出了一个phpoffice
文件夹
☞ 如何将 Excel
中的数据导入MySQL
☜
除了参考我展示的步骤,也要注意下我的代码注释哦!
①. excel 文件的整理
首先要求用来导入
MySQL
数据表的excel文件
中的内容要规整,对应于你的数据表
- 鄙人将其放置于目录
public\cms\file\bird_express.xlsx
以我要操作的 excel
表为例,(==数据简单,可举一反三,自由拓展==):
②. 创建目标数据表
-
以我的简答测试为例,表格设计如下:
③. MTPhpExcel类的使用
- 首先引入所提供源码中的
MTPhpExcel.php
下图即为我创建的 ==测试入口==,主要目的就是为了调用核心方法readExcelFileToArray()
核心处理方法
readExcelFileToArray()
源码见附录
-
运行代码后的结果如下:
☞ 如何将数据导出到Excel
文件 ☜
- 同理,我设计了一个测试方法,主要目的就是为了调用核心方法
outputDataToExcelFile()
核心处理方法
outputDataToExcelFile()
源码见附录
- 运行代码后,可以得到如下的一个
excel
表:
【温馨提示:】
1. 为了代码参考方便,鄙人尽量使其简洁化
所以如果对于某列数据需要字体加粗、居中、变大等各种操作,可自行扩展
2. 当前代码,未做图片格式的展示处理
如有需要可阅读 phpexcel 文档规则,根据目标数据对应性处理即可 ...
☞ 附录
☛ >>>源码下载>>> ☚
- 主要使用的就是其中的
MTPhpExcel
类
image