一、安装
包地址
https://packagist.org/packages/box/spout
github地址
https://github.com/box/spout
安装包
composer require maatwebsite/excel
二、实例
下面是3.3版本使用demo

<?php
namespace App\Lib;use Box\Spout\Reader\Common\Creator\ReaderEntityFactory;
use Box\Spout\Writer\Common\Creator\WriterEntityFactory;class ExcelSpout{private $head  = [];private $data = [];private $name = '';public function __construct($head=[],$data=[],$name=''){$this->head = $head;//csv 表头 ['id','name']$this->data = $data;//表数据 [[1,'a'],[2,'b']]$this->name = $name.'.xlsx';//导出名字}//导出public function export(){header("Access-Control-Allow-Origin: * ");header("Access-Control-Allow-Methods:GET,POST,PUT,DELETE,OPTIONS");header("Access-Control-Allow-Headers:X-Requested-With,authorization,Content-Type,Accept,Origin,Token");header("Content-Type: application/vnd.ms-excel; charset=UTF-8");//header("Content-Disposition: attachment; filename=\"{$this->name}\"");$writer = WriterEntityFactory::createXLSXWriter();$cells = [];foreach ($this->head as $hv){$cells[] = WriterEntityFactory::createCell($hv);}$singleRow = WriterEntityFactory::createRow($cells);$writer->openToBrowser("php://output/" . $this->name);$writer->addRow($singleRow);foreach ($this->data as $value) {$rowFromValues = WriterEntityFactory::createRowFromArray($value);$writer->addRow($rowFromValues);}$writer->close();exit();}/*** @param     $file* @param int $line* @return \Generator* @throws Exception*/public function importXlsx($file){if($file->getClientOriginalExtension() != 'xlsx') throw new \Exception('导入文件格式为xlsx文件');$rowArr = [];try {ini_set('memory_limit', '100M');set_time_limit(1000);$reader = ReaderEntityFactory::createXLSXReader(); // 指定文件类型$reader->open($file); // 导入文件(需从本地导入,例如 storage/app/public/ 文件夹下)foreach ($reader->getSheetIterator() as $k => $sheet) { // 遍历sheetforeach ($sheet->getRowIterator() as $k => $row) { // 遍历行$rowArr[] = $row->toArray(); // 行数据数组// TODO...}}$reader->close(); // 释放内存} catch (\Exception $e) {throw new \Exception($e->getMessage());}return $rowArr;}}

laravel excel导入导出box/spout相关推荐

  1. laravel Excel导入导出

    1.简介 Laravel Excel 在 Laravel 5 中集成 PHPOffice 套件中的 PHPExcel,从而方便我们以优雅的.富有表现力的代码实现Excel/CSV文件的导入和导出. 该 ...

  2. 注解+反射优雅的实现Excel导入导出(通用版)

    以下文章来源方志朋的博客,回复"666"获面试宝典 来源:blog.csdn.net/youzi1394046585/ article/details/86670203 日常在做后 ...

  3. java超级简单到爆的Excel导入导出(easypoi)

    场景: 在日常工作中,excel导入导出,是十分常见的,有两种主流的技术,一种是jxl,另一种是poi,而easypoi就是对poi进行了封装,使得导入导出变得更加的简单,阿里巴巴也有封装的工具名叫E ...

  4. 一个基于POI的通用excel导入导出工具类的简单实现及使用方法

    前言: 最近PM来了一个需求,简单来说就是在录入数据时一条一条插入到系统显得非常麻烦,让我实现一个直接通过excel导入的方法一次性录入所有数据.网上关于excel导入导出的例子很多,但大多相互借鉴. ...

  5. easyexcel 设置标题_EasyExcel,让 excel 导入导出更加简单

    做积极的人,而不是积极废人! 来源:jianshu.com/p/8f3defdc76d4EasyExcelGitHub上的官方说明快速开始maven仓库地址导入导出总结 EasyExcel 在做exc ...

  6. excel winform 导入 导出_强大的 Excel 导入导出工具 hutool

    " 最近项目上需要用到 Excel 的导入导出功能,想着之前使用的都有点麻烦,所以结合多方资料,终于找到了这个还算不错的 Excel 处理工具,一起来看" 今日安利好物名为 Hut ...

  7. easypoi 多sheet导入_程序员接私活利器 玩转excel导入导出

    为什么会写Easypoi 以前的以前(岁月真TMD的快)我虽然写了不少代码但还是很少写poi,然后跳到一家公司之后就和业务人员聊上了,来这个需要个报表,这个报表样式是这样的,这个表头是这样的,就这样我 ...

  8. SpringBoot集成EasyPoi实现Excel导入导出

    作者介绍: 本人Java特工,代号:Cris Li : 中文名:克瑞斯理 简书地址: 消失的码农 - 简书 CSDN地址: https://blog.csdn.net/jianli95 个人纯洁版博客 ...

  9. SpringBoot实现Excel导入导出,好用到爆,POI可以扔掉了!

    在我们平时工作中经常会遇到要操作Excel的功能,比如导出个用户信息或者订单信息的Excel报表.你肯定听说过POI这个东西,可以实现.但是POI实现的API确实很麻烦,它需要写那种逐行解析的代码(类 ...

最新文章

  1. Python函数参数的五种类型
  2. goland 调试运行路径
  3. Java黑皮书课后题第4章:*4.13(判断元音还是辅音)编写程序,提示用户输入一个字母,判断该字母是元音还是辅音。对于非字母的输入,提示非法输入
  4. java servlet接口开发_servlet三种实现方式之一实现servlet接口
  5. lasso回归_一文读懂线性回归、岭回归和Lasso回归
  6. 华科计算机复试ccf成绩,新鲜速递!刚拟录取华科学妹总结的复试攻略,快看
  7. 有一种叫“蒸汽波”豪横的平面设计手法
  8. select完成单线程,多用户
  9. SpringMVC【校验器、统一处理异常、RESTful、拦截器】
  10. matlab中的方波信号图片_哈工大、哈工程MATLAB被禁用,这个国产软件号称可替代!...
  11. Windows端口扫描关闭工具
  12. hdu-2206 IP的计算
  13. hive —— struct 复合结构
  14. echarts数字云
  15. 四川麻将java_四川麻将纯AI算法------最优拆牌
  16. mysql frm文件生成工具_如何使用mysqlfrm工具从.frm文件中恢复表结构
  17. win7添加ftp到计算机,技术编辑帮你win7系统FTP地址添加到资源管理器的收藏夹下的设置步骤...
  18. 小米 2021 秋招面试总结
  19. (六)CDA 数据分析师Level1考试新版大纲解析(自己整理)PART 6业务数据分析
  20. 计算机动画基本概念,计算机三维动画基本概念简介

热门文章

  1. proguard学习
  2. 英语语法总结--虚拟语气
  3. bzoj4521【CQOI2016】手机号码
  4. 网络异常模拟测试方法
  5. 2021CCPC上海省赛题解ABCDEGHIJK
  6. 将input置灰 而且不可点击样式
  7. HTML5期末大作业:动漫网站设计——火影忍者动漫(7页) HTML+CSS+JavaScript 漫画网页制作作业_电影网页设计...
  8. python技术线上培训
  9. 《史上最全、最强Java学习路线知识点整理!!全是干货!!》
  10. OLA/SOLA/WSOLA语音重叠相加算法分析