网址:

https://learnku.com/articles/32400

1:安装插件

环境要求
PHP: ^7.0
Laravel: ^5.5 安装方式
composer require maatwebsite/excel

2:

excel 导出
新建导出文件,导入导出业务代码尽量不要和原来业务耦合。我们拿UserModel 模块举例

php artisan make:import UsersImport --model=User

erre

 

模型设置需要导入的字段,fillable为白名单,防止报错;

protected $fillable = ['username', 'phone','email','password','sex'];

3:会在 app 目录下创建 Exports 目录,UsersImport.php 代码内容,注意对应数据库字段

<?php

namespace App\Imports;

use App\Models\UserModel;
use Maatwebsite\Excel\Concerns\ToModel; class UsersImport implements ToModel
{
/**
* @param array $row
*
* @return \Illuminate\Database\Eloquent\Model|null
*/
public function model(array $row)
{
return new UserModel([
//
'username' => $row[0],
'phone' => $row[1],
'email'=>$row[2],
'password' => bcrypt($row[3]),
'sex'=>$row[4],
]);
}
}

4业务控制器中调用,命名空间记得引入,并书写方法


<?php

namespace App\Http\Controllers\admin;

use App\Http\Controllers\Controller;
use App\models\Node;
use Illuminate\Http\Request;
//引入xlsx
use App\Imports\UsersImport;
use Maatwebsite\Excel\Facades\Excel; class Index extends Base
{ //数据导入
public function import()
{
$filePath=public_path().'/static/users.xlsx';
Excel::import(new UsersImport, $filePath);
return ['code'=>100,'message'=>'导入成功'];
}
}

5;书写路由:

//    Excel文件导入
Route::get('import','index@import');

6:进入表格,填写内容,按字段顺序填写,并保存至php软件的public/static目录下

7:走路由,数据添加完成,查看数据库

8:报错解决,在模型内加入fillable为白名单,表示该字段可被批量赋值;(guarded为黑名单,表示该字段不可被批量赋值)。

protected $fillable = ['username', 'phone','email','password','sex'];

清缓冲:

php artisan config:clear or php artisan config:cache

laravel 7 xlsx 数据导入至 数据库的更多相关文章

  1. 把Excel数据导入到数据库

    引入命名空间 using System.IO; using System.Data; using System.Data.OleDb; 引入命名空间 首先要把Excel上传到服务器 //上传Excel ...

  2. c#将Excel数据导入到数据库的实现代码

    这篇文章主要介绍了c#将Excel数据导入到数据库的实现代码,有需要的朋友可以参考一下 假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: 代码: 代码如下: using Syste ...

  3. 将Excel数据导入mysql数据库的几种方法

    将Excel数据导入mysql数据库的几种方法 “我的面试感悟”有奖征文大赛结果揭晓! 前几天需要将Excel表格中的数据导入到mysql数据库中,在网上查了半天,研究了半天,总结出以下几种方法,下面 ...

  4. 利用TOAD实现把EXCEL数据导入oracle数据库

    利用TOAD实现把EXCEL数据导入oracle数据库 工具:   Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然 ...

  5. C# DateTime的11种构造函数 [Abp 源码分析]十五、自动审计记录 .Net 登陆的时候添加验证码 使用Topshelf开发Windows服务、记录日志 日常杂记——C#验证码 c#_生成图片式验证码 C# 利用SharpZipLib生成压缩包 Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库

    C# DateTime的11种构造函数   别的也不多说没直接贴代码 using System; using System.Collections.Generic; using System.Glob ...

  6. java实现EXCEL数据导入到数据库中的格式问题的解决

    之前作为项目甲方,加之java接触不多,在java web开发方面都是打下手的份. 对于EXCEL数据导入到数据库这个问题一直老是出现格式原因而导入失败也是未免惆怅,开发团队也是只说回去检查一下格式. ...

  7. 把execel表数据导入mysql数据库

    今天,是我来公司第二周的第一天. 作为新入职的实习生,目前还没适合我的实质项目工作,今天的学习任务是: 把execel表数据导入到mysql数据库,再练习下java操作JDBC. 先了解下execel ...

  8. NOPI Excel 数据导入到数据库

    /// <summary> /// 上传excel文件 并将文件数据导入到数据库 /// </summary> /// <param name="file&qu ...

  9. jsp+servlet上传excel并将数据导入到数据库表的实现方法

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

随机推荐

  1. Nginx 路由转发配置(转)

    Nginx 路由转发配置笔记 由于预算有限,只有一台服务器,想要玩的东西不少,所以这个台服务器上会提供多重服务,因此涉及到的nginx转发就必有重要了 由nginx做请求代理,提供多种服务 php搭建 ...

  2. div置顶

    转载请注明来源:https://www.cnblogs.com/hookjc/ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transit ...

  3. array_multisort array_merge 排序

    前段时间遇到一个排序问题,大致是这样的:$demo = array(        0        =>        array(                'name'         ...

  4. 给 zsh 自定义命令添加参数自动补全

    有时我会自定义一些 zsh 命令,以便提升某些高频操作的效率.本文记录我给一个自定义命令添加参数自动补全的方法. 场景 我自定义了一个 zsh 命令 gmt,执行 gmt <b2>,可以将 ...

  5. 用rewrite规则实现将所有到a域名的访问rewrite到b域名

    1.临时重定向 1.1使用redirect实现临时重定向 # cat /apps/nginx/conf/nginx.conf ...省略... server { listen 80; server_n ...

  6. 02 前端基础之CSS

    目录 前端基础之CSS css简介 基本选择器(重要) 组合选择器(重点) 属性选择器 分组与嵌套 伪类选择器 伪元素选择器 选择器的优先级 字体相关 背景属性 边框属性 display属性 盒子模型 ...

  7. 文件属性信息详述 上( 硬软连接+文件类型+用户&用户组)

    目录 文件属性信息详述 上 一.文件类型概念说明 1.文件详细信息详解 2.inode编号 二.文件软硬链接说明 1.硬链接和软连接 4.删除文件的底层逻辑 5.文件类型 三.文件用户和用户组 1.概 ...

  8. PHP面试常考内容之面向对象(1)

    PHP中面向对象常考的知识点有以下几点,我将会从以下几点进行详细介绍说明,帮助你更好的应对PHP面试常考的面向对象相关的知识点和考题. 整个面向对象文章的结构涉及的内容模块有: 一.面向对象与面向过程 ...

  9. C#动态规划法计算文本相似度

    C# 采用动态规划算法,计算两个字符串之间的相似程度. public static double CountTextSimilarity(string textX, string textY, boo ...

  10. 字段是字段,属性是属性,字段不是属性,属性看getter或setter

    1.看图猜字段和属性 2.结果是一个属性[字段麻,太明目张胆啦,就是2啦],又是哪个属性能够显示出来呢? 3.这是为什么呢? 让我们回到javabean的课堂~~~ ★ javaBean中的prope ...