laravel5.4上传EXCEL并解析

首先,通过composer引入Laravel Excel v2.1库

composer require maatwebsite/excel ~2.1.0

将ServiceProvider添加到提供者数组中 config/app.php

providers数组中添加 Maatwebsite\Excel\ExcelServiceProvider::class, aliasses数组中添加:  ‘Excel’ => Maatwebsite\Excel\Facades\Excel::class

这样就可以开始使用Excel了,在类头部use Excel;即可

下面是php示例代码:

public function postLeadExcel(Request $request)
{  
    $file = $request->file('leadFile');
    if($file -> isValid()){
        $clientName = $file->getClientOriginalName();
        $extension = $file->getClientOriginalExtension();
        $newName = md5(date('ymdhis').$clientName).".".$extension;
        $uploadDir = dirname($_SERVER['SCRIPT_FILENAME']).'/upload/';
        $path = $uploadDir.$newName;
        $file->move($uploadDir,$newName);
        $excel_data = Excel::load($path)->getSheet(0)->toArray();//这就是excel表的数据
        // do some thing 
    }
}

JS:

$("#do_lead").on('click',function(){
    var $this = $(this);
    $this.prop('disabled', true);
    var filepath = $("input[name='leadFile']").val();
    var extStart = filepath.lastIndexOf(".");
    var ext = filepath.substring(extStart, filepath.length).toUpperCase();
    if (ext != ".XLSX" && ext != ".XLS") {
        alert("请上传xlsx,xls格式的文件");
    } 
    else {
        $("#lead_form").submit();
    }
});

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Android知识点总结

Android原生下载(上篇)基本逻辑+断点续传

981
来自专栏马洪彪

Java生成条码二维码

一、概述 可用barcode4j或zxing等第三方库,推荐zxing。 barcode4j资料链接:http://barcode4j.sourceforge....

4598
来自专栏Java架构师历程

Struts2的工作原理

在学习struts2之前,首先我们要明白使用struts2的目的是什么?它能给我们带来什么样的好处?

844
来自专栏osc同步分享

springboot Actuator

springboot Actuator只需要加入依赖即可使用: <dependency> <groupId>org.springframework.bo...

2896
来自专栏Kubernetes

深度解析Kubernetes Local Persistent Volume(二)

摘要:上一篇博客”深度解析Kubernetes Local Persistent Volume(一)“对local volume的基本原理和注意事项进行了分析,...

7853
来自专栏Java与Android技术栈

Android App安全防范措施的小结

关闭打印的日志,防止日志中的调试信息被看到。如果在网络框架中使用了日志,那就更加需要关闭了。

1032
来自专栏刘望舒

Android PMS处理APK的复制

在上一篇文章Android包管理机制之PackageInstaller安装APK中,我们学习了PackageInstaller是如何安装APK的,最后会将APK...

1785
来自专栏跟着阿笨一起玩NET

.NET开发中的事务处理大比拼

本文转载:http://www.cnblogs.com/jhxk/articles/2696307.html

661
来自专栏林冠宏的技术文章

关于Android中为什么主线程不会因为Looper.loop()里的死循环卡死?引发的思考,事实可能不是一个 epoll 那么 简单。

( 转载请务必标明出处:https://cloud.tencent.com/developer/user/1148436/activities) 前序 本文将...

3045
来自专栏架构师之旅

《Spring敲门砖之基础教程第一季》 第二章(1) Spring框架之IOC首例-HelloWorld

回顾 上一章我们主要学习了Spring的一些理论知识,对Spring框架有了一个总体的概括,大家应该在头脑里形成一个初步的印象,接下来我们就会针对Spring框...

19410

扫码关注云+社区