PHP laravel框架 导入导出excel ,phpexcel数据导出分多个工作区(sheet)

laravel 导入导出有很多 但是你发现等你根据conposer安装excal的时候你发现 他总是不依不饶的提示你: 安装失败

这就是laravel5.4的高明之处了, 下面让我们来看看吧!

1. 在laravel 项目的根目录下 我们会看到 一个composer.json的文件:

打开, 并找到 "maatwebsite/excel": "~2.0.0" 修改为 "~2.1.0" 保存

2. 执行 composer update maatwebsite/excel

3. 编辑 laravel - config - app.php

找到 provides 的数组 在数组中添加   Maatwebsite\Excel\ExcelServiceProvider::class,

在 aliases 的数组 中 添加  ‘Excel‘    => Maatwebsite\Excel\Facades\Excel::class,

4. 添加完成之后 执行: php artisan vendor:publish

这样就可以建路由 Controller 等

代码:

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Excel;
class ExcelController extends Controller
{
    //Excel文件导出功能 By Laravel学院
    public function export(){
        $cellData = [
            [‘学号‘,‘姓名‘,‘成绩‘],
            [‘10001‘,‘AAAAA‘,‘99‘],
            [‘10002‘,‘BBBBB‘,‘92‘],
            [‘10003‘,‘CCCCC‘,‘95‘],
            [‘10004‘,‘DDDDD‘,‘89‘],
            [‘10005‘,‘EEEEE‘,‘96‘],
        ];
        Excel::create(‘学生成绩‘,function($excel) use ($cellData){
            $excel->sheet(‘sheetname‘, function($sheet) use ($cellData){
                $sheet->rows($cellData);
            });
        })->export(‘xls‘);
    }
}若需导出分多个工作区(sheet):
  多次调用  $excel->sheet(....)  即可,注意 sheetname 避免重复
  
//导入
$filePath = ‘storage/exports/‘.iconv(‘UTF-8‘, ‘GBK‘, ‘1234‘).‘.xls‘;
        Excel::load($filePath, function($reader) {
                $data = $reader->all();
               dd($data);
});
补充:
假如项目用到时间 请修改: 根目录->config->app
 ‘timezone‘ => ‘PRC‘,//‘UTC‘, 为Excel的时间  //PRC为中国时间 不使用UTC的原因是因为使用date函数的时候时间不准确
假如表头是汉字 导致该列数据无法输出 请修改: 根目录->config->excel
  ‘to_ascii‘ => false  //ture 的话 Excel表头是汉字的情况下 该数值会缺失

原文地址:https://www.cnblogs.com/dereckbu/p/9288640.html

时间: 2024-08-06 02:44:43

PHP laravel框架 导入导出excel ,phpexcel数据导出分多个工作区(sheet)的相关文章

Java通过POI技术操作Excel(3)----数据导出

在之前的博客中,总结了Excel模板生成和Excel数据录入,然后剩最后一个模块,数据库中数据读取,在之前的基础上我们来看这一模块,应该已经非常容易了,接下来简单的介绍一下: 这里我们仍然以jsp+servlet为例,对SqlServer2005数据库进行操作,如下都是基本步骤: 1.连接数据库:2.根据sql语句获取数据库中值:3.将值进行导出操作: 首先,我们来记性数据库的连接,这个相信接触过java的人都不会陌生,我就不赘述了 1 public class DataBase { 2 pri

C# 使用Epplus导出Excel [2]:导出动态列数据

上一篇导出excel,是导出已知固定列,有时候我们根本就不知道有几列.列名是什么,因此这些动态列,可以用Dictionary<string,string>接收. 1.实体Student上加上一个字段Dictionarys Student.cs public class Student { public String Name { get; set; } public String Code { get; set; } public Dictionary<string, string>

PHPExcel数据导出到Excel文件

/** * 数据导出到Excel文件 * * @param object $data 要导出的数据内容 * @param object $headArr 设置Excel的头名称 * @param string $fileName 导出的文件名称 * @param string $width 设置单元格的宽度 * * @throws PHPExcel_Exception 异常控制 * @throws PHPExcel_Reader_Exception 控制Excel加载时的异常 * @throws

PHP将Excel导入数据库以及数据库数据导出至Excel

一.导入 导入需要使用能读取Excel的组件,网上也有比较好的组件,这里分享我使用的:下载  提取码:vxyn.(注意两个文件有引用关系) <?php //传入要导入的Excel的文件名 function import_to_DB($filename) { require_once'reader.php'; $data = new Spreadsheet_Excel_Reader(); //创建读取Excel的对象 $data->setOutputEncoding('utf-8'); //设置

PHPExcel 数据导出实例

一.getdata.php namespace Webadmin\Model; use ExtendSpace\Excel;        --        略        --                // 取出数据         $dataBillArr = $this->get_list_bysql($sql);         // 替换数据中的 0 .1 为 是.否         // PHPExcel 有内置的方法处理,但是得到的是 TRUE/FALSE,这里自己处理吧

java中使用poi导出excel表格数据并且可以手动修改导出路径

在我们开发项目中,很多时候会提出这样的需求:将前端的某某数据以excel表格导出,今天就给大家写一个简单的模板. 这里我们选择使用poi导出excel: 第一步:导入需要的jar包到 lib 文件夹下 jar包下载路径:http://download.csdn.net/download/pumpkin09/7077011 第二步:添加poi导出工具类 1 package com.yjd.admin.util; 2 3 import java.io.IOException; 4 import ja

java 导出excel表格数据

本篇文章基于java把数据库中的数据以Excel的方式导出,欢迎各位大神吐槽: 1.基于maven jar包引入如下: 1 <dependency> 2 <groupId>net.sourceforge.jexcelapi</groupId> 3 <artifactId>jxl</artifactId> 4 <version>2.6.12</version> 5 </dependency> 2.首先创建数据库对

java 导出Excel 大数据量

出处: http://lyjilu.iteye.com/ 分析导出实现代码,XLSX支持: /** * 生成<span style="white-space: normal; background-color: #ffffff;">XLSX</span>,2007版本的excel,每个sheet无6.5W的行数限制,但是到了一定数量,可能内存溢出, * 次方法适合在预计10W以下的数据导出时使用,本机测试,14W可以导出.列数量在8列左右 * * @param

ASP.NET MVC导出excel(数据量大,非常耗时的,异步导出)

要在ASP.NET MVC站点上做excel导出功能,但是要导出的excel文件比较大,有几十M,所以导出比较费时,为了不影响对界面的其它操作,我就采用异步的方式,后台开辟一个线程将excel导出到指定目录,然后提供下载. 效果如下: 选中了多行,会导出多个工作簿sheet,一个汇总的,其他的就是明细数据. 这里我使用了NPOI组件来进行excel导出,下面是要几个封装好的类,从网上找的,然后修改了一下. GenerateSheet.cs using NPOI.SS.UserModel; usi