来源于:https://www.cnblogs.com/MyIsLu/p/6830579.html

PHPExcel 扩展包下载地址:             https://github.com/PHPOffice/PHPExcel

放在扩展类库目录下。

导出:

控制器代码如下:

     //导出
function excel()
{
$path = dirname(__FILE__);//找到当前脚本所在路径
Loader::import('PHPExcel.Classes.PHPExcel');//手动引入PHPExcel.php
Loader::import('PHPExcel.Classes.PHPExcel.IOFactory.PHPExcel_IOFactory');//引入IOFactory.php 文件里面的PHPExcel_IOFactory这个类
$PHPExcel = new \PHPExcel();//实例化 $PHPSheet = $PHPExcel->getActiveSheet();
$PHPSheet->setTitle("demo");//给当前活动sheet设置名称
$PHPSheet->setCellValue("A1","姓名")->setCellValue("B1","分数");//表格数据
$PHPSheet->setCellValue("A2","张三")->setCellValue("B2","");//表格数据
$PHPWriter = \PHPExcel_IOFactory::createWriter($PHPExcel,"Excel2007");//创建生成的格式
header('Content-Disposition: attachment;filename="表单数据.xlsx"');//下载下来的表格名
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
$PHPWriter->save("php://output");//表示在$path路径下面生成demo.xlsx文件
}

调用excel方法就可以生成一个表格了,后续的根据自己的需要自己去写代码.

PHPexcel 表格数据导入数据库 city 表,在这之前自己先创建好表单,我这次用的都是地址数据表做的测试:

导入

我这里导入的之前导出的那个表格:

view:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="" enctype="multipart/form-data" method="post">
<input type="file" name="excel" />
<input type="submit" value="导入">
</form>
</body>
</html>

controller:

    //导入
public function inserExcel()
{
if(request() -> isPost())
{
Loader::import('PHPExcel.Classes.PHPExcel');
Loader::import('PHPExcel.Classes.PHPExcel.IOFactory.PHPExcel_IOFactory');
Loader::import('PHPExcel.Classes.PHPExcel.Reader.Excel5');
//获取表单上传文件
$file = request()->file('excel');
$info = $file->validate(['ext' => 'xlsx'])->move(ROOT_PATH . 'public'); //上传验证后缀名,以及上传之后移动的地址 E:\wamp\www\bick\public
if($info)
{
// echo $info->getFilename();
$exclePath = $info->getSaveName(); //获取文件名
$file_name = ROOT_PATH . 'public' . DS . $exclePath;//上传文件的地址
$objReader =\PHPExcel_IOFactory::createReader('Excel2007');
$obj_PHPExcel =$objReader->load($file_name, $encode = 'utf-8'); //加载文件内容,编码utf-8
echo "<pre>";
$excel_array=$obj_PHPExcel->getsheet()->toArray(); //转换为数组格式
array_shift($excel_array); //删除第一个数组(标题);
$city = [];
foreach($excel_array as $k=>$v) {
$city[$k]['name'] = $v[];
$city[$k]['number'] = $v[];
}
dump($city);
}else
{
echo $file->getError();
}
}else
{
return $this -> fetch();
} }

最新文章

  1. 解猜数字(XAXB)
  2. codeforces 581C. Developing Skills 解题报告
  3. ubuntu 安装 wkhtmltopdf 的方法
  4. 转 BHO API HOOK Wininet基于IE编程的一些资料
  5. laravel项目return back()-&gt;withErrors($validator)或return back()-&gt;with(&#39;errors&#39;,&#39;原密码错误!&#39;)在前台原密码错误的情况下不能正确显示错误信息,变成报错!
  6. (任寒韬)WebApp群主 - MobileTech 资料
  7. 1509 -- Glass Beads POJ
  8. MSSQLSERVER数据库- 作业调度定时备份数据库
  9. linux服务器之间拷贝文件和文件夹
  10. hdu_5720_Wool(脑洞)
  11. QEMU ELF_LOAER分析[基于MIPS]
  12. Apache Flume 1.7.0 各个模块简介
  13. ansible 模块 分享
  14. Java学习笔记35(sql补充)
  15. ansible中的playbook详解
  16. seq 序列
  17. [转载]Brackets - 强大免费的开源跨平台Web前端开发工具IDE (HTML/CSS/Javascript代码编辑器)
  18. DPDK(mtcp)vs RDMA/ROCE
  19. Bitbucket - 用git 用法
  20. Python面向对象之属性

热门文章

  1. k8s + docker + Jenkins使用Pipeline部署SpringBoot项目时Jenkins错误集锦
  2. P1343 地震逃生(最大流板题)
  3. 从上帝视角看Java如何运行
  4. 关于C#三层架构中的“分页”功能
  5. 关于竞赛大佬常用的 static const auto _ = []() 用法解析
  6. [Python] 字符串加密解密
  7. Dos 命令启动网卡
  8. VM卸载不完全,重装的一个下午
  9. leetcode c++做题思路和题解(4)——队列的例题和总结
  10. 一个不错的spring 学习博客