在 Laravel-Excel 中导出大数据

2024-03-13

使用此代码,我可以将 MyModel 的数据导出到 Excel,工作正常:

Excel::create('Filename', function ($excel) {
                $excel->sheet('Contratos', function ($sheet) {
                    $datos = MyModel::select([
                        'id', 'data'])
                        ->get();
                    $sheet->fromArray($datos, null, 'A1', false, false);
                });
            })->export('xls');

但我需要对数据进行分块才能生成 Excel,因为在另一个模型中我有太多数据(例如 9000 条记录)。我看到过一些这样的例子:

http://www.thecreativeroad.com/blog/export-large-dataset-using-laravel-excel-using-laravel-db-chunk http://www.thecreativeroad.com/blog/export-large-dataset-using-laravel-excel-using-laravel-db-chunk

$data = $user->query();
    try{
        return Excel::create('FileName', function($excel) use($data){

        $data->chunk(100, function ($users) use($excel) {
            $collection = $this->transformCollection($users);

            $excel->sheet('OrgSubUserList', function($sheet) use($collection){
                $sheet->fromModel($collection, null, 'A1', true);
            });
        });

        })->export('xls');
    }
    catch(Exception $e)
    {
        return false;
    }

但我不知道如何将其应用到我的代码中,我对工作表上的顺序和文件本身之间存在混淆。有什么提示吗?


将 false 作为第三个参数传递给 chunk() 以禁用排队

$data = [];
Excel::filter('chunk')->load($path)->chunk(1000, function ($results) use (&$data) {
    foreach ($results as $row) {
        $data[] = $row;
    }
}, $shouldQueue = false);
return $data;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Laravel-Excel 中导出大数据 的相关文章

  • Laravel 查询生成器:枢轴不在的地方

    wherePivotIn已提及here https laravel com docs 5 5 eloquent relationships many to many under 通过中间表列过滤关系 但我找不到任何有关相反功能的信息 As
  • Laravel 4:Facades 是如何解决的?

    我有点想看看 Laravel 4 发生了什么facades在引擎盖下 我们以这个 Facade 为例 File get someArgs 如果我没有记错的话 逐步 过于简化 的调用将是 static method invocation wh
  • 用户登录时如何更新updated_at列?

    我正在尝试更新updated at每次用户登录时 列到当前时间 但我收到以下错误 InvalidArgumentException 找不到四位数年份 数据丢失 PHP input Input all remember Input has r
  • Jwt 令牌是唯一的

    我正在使用 JWT 网络令牌系统 我能够成功生成令牌 我在 Laravel 中创建 JWT 令牌 如下所示 我正在使用以下技术堆栈 拉拉维尔 5 2 http laravel com 框架 JWT 包裹 https github com t
  • 无法合并 Laravel 中的 Eloquent 集合

    我需要在 Laravel 5 1 中合并集合或数组 可以是其中之一 但在 Builder php 第 2071 行中收到错误 BadMethodCallException 调用未定义的方法 Illuminate Database Query
  • 无限滚动 jQuery 和 Laravel 5 分页

    我成功从控制器返回数据 public function index posts Post with status verified gt paginate 30 return view show gt with compact posts
  • Dingo API 删除“数据”信封

    有没有一种简单的方法可以从 Dingo API 响应中删除 数据 信封 当我使用这个 Transformer 来转换用户模型时 class UserTransformer extends EloquentModelTransformer L
  • Laravel - 雄辩地覆盖自定义时间戳......为什么?

    我正在制作一个库存管理系统 当产品缺货时 我会在表中输入一个条目 并记下 oos at 字段和日期 时间 后来 当它回到库存时 我找到该条目并更新 restocked at 时间戳字段 但是 当我执行第二个操作时 我的 oos at 字段被
  • 如何在 MySQL 中存储工作日列表?

    我正在使用编写一个应用程序PHP我需要存储一个独特的工作日列表MySQL 在应用程序中 我有一个数组来存储工作日 如下所示 days Wed Thu Sat 我知道我可以使用SET列 但我不想使用这种类型 因为它与我正在使用的框架 Lara
  • 如何在 Laravel 中返​​回唯一值

    这里我有这个示例数据 它根据类别产品返回 我需要限制重复值 Raw JSON brand id fe877b45 8620 453a 8805 63f0cbd80752 name No Brand slug no brand descrip
  • Laravel 5.5 中的主从配置

    如何配置 Laravel 5 5 主从 MySQL 复制 我想分别在master和slave上进行写操作和读操作 可选 有没有办法在理想条件下进行连接池和打开连接的最大 最小数量 只需改变你的config database php文件包含读
  • PHPstorm - 无法在blade.php 文件中设置断点

    我正在开发 Laravel 应用程序 可以很好地调试我的控制器 php 文件 但我还想调试blade php 文件 在我当前的设置中 我遵循了所有 jetbrains 为 Laravel 推荐的设置 https confluence jet
  • Laravel 中如何返回数组而不是集合?

    在 Laravel 中 可以仅选择一个字段并将其作为集合 数组返回 例如考虑模型Foo链接到表foos其中有字段id a b c 考虑以下示例数据 1 10 15 20 1 12 15 27 1 17 15 27 1 25 16 29 1
  • 附加之前检查数据库中是否存在 ID

    我通过选择一个带有类别的数组json decode并将它们附加到文章中 public static function setArticleCategory Request request article Article where id r
  • Laravel中with()和compact()有什么区别

    功能有什么区别with and compact 在 Laravel 中这两个例子 示例1 return View make books index gt with booksList booksList 示例2 return View ma
  • 如何使用 Laravel Mix 和 WorkBox?

    我正在尝试为我的应用程序构建一个 PWA 并花了近 48 小时试图弄清楚如何将 Workbox 与 Laravel Mix 结合使用 具有讽刺意味的是 谷歌说 Workbox 是为了让事情变得简单 Buh 好吧 到目前为止我已经弄清楚了 我
  • 根据客户端发送 HTML 或 JSON 响应

    我有一个带有 Eloquent 实体及其各自的 Laravel 应用程序RESTful 资源控制器 http laravel com docs 5 0 controllers restful resource controllers 如下所
  • 我可以更改 Route-Model-Binding 的解析逻辑以始终小写字符串键吗?

    我在 Laravel 5 7 项目中使用 UUID 键 并且效果非常好 当通过路由从数据库请求项目时 将查找键并将其作为字符串进行比较 当请求发送大写的 uuid 字符串时 路由模型绑定将找不到模型 因为 Laravel 的 UUID 字符
  • Laravel 转义 Blade 模板中的所有 HTML

    我正在 Laravel 中构建一个小型 CMS 并尝试显示内容 存储在数据库中 它显示 HTML 标签而不是执行它们 就像所有打印数据都有一个自动 html entity decode 一样
  • Laravel:类控制器不存在

    我创建了一个简单的控制器并定义了一个函数 但是当我运行它时 它返回一个错误 指出控制器不存在 在我的 web php 中分配一条路线

随机推荐

  • Playframework 和 Twitter 流 API

    如何从 Twitter Streaming API POST 状态 过滤器读取响应数据 我已建立连接并收到 200 状态代码 但我不知道如何阅读推文 我只想在推文出现时将其打印出来 ws url url sign OAuthCalculat
  • 僵尸进程的父进程终止后会发生什么?

    我只是好奇 如果僵尸进程的父进程不关心等待它 会发生什么 假设 我们有一个父母和一个孩子 子进程先于父进程终止 来自APUE 内核为每个终止进程保留少量信息 最少该信息包括进程 ID 进程的终止状态 家长需要使用以下方式获取此信息waitp
  • 拥有方的主键作为连接列

    NOTE 主题很长但很详细 如果您使用 Doctrine2 和 oneToOne 关系 可能会派上用场 最近在Doctrine中遇到一个问题 我创建了具有 oneToOne 双向关系的 User 和 UserData 对象 User one
  • 将 Promise 包装在 async/await 中

    我在 async await 和从 Promise 返回值方面遇到了一些困难 function test return new Promise resolve reject gt resolve Hello async function c
  • 浏览器对蓝牙信标/iBeacons 的感知

    有没有办法让浏览器知道其附近的 iBeacon 设备 类似于 HTML5 地理定位的工作方式 如果不是 这是否可以通过浏览器插件来实现 该插件可以提供 javascript 使用的详细信息 很不幸的是 不行 没有 Web 浏览器在信标检测和
  • 在 C++ 中使用的脚本语言中在运行时创建新的类/成员 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我已经断断续续地解决这个问题几个月了 现在想要真正想出一个正确的解决方案来处理使用成员函数创建新的用户定
  • SQL Server /实体框架 - 如何按随机数排序然后稍后重现结果?

    我使用 ASP NET MVC 5 和实体框架以及 Microsoft SQL Server 后端 简短版本 我想执行搜索 按随机数对其中的部分进行排序 然后能够稍后显示搜索结果 详细版本 理论上假设我有一家商店 有 100 万件商品 每个
  • PHP 函数检查函数外部是否存在变量

    我需要一个 PHP 函数来检查函数外部是否存在变量 如果不存在 则为其指定默认值 该函数将类似于 function if exist argument default where argument将是函数外部的任何变量 它可以是变量的变量
  • 如何在验证中为特定列设置保留字?

    我有一个模型叫Community它有一个名为name 我用这个name在子域中 例如 当用户访问http rockstar test sample com 它显示的内容与http test sample com community rock
  • Pandas 如何在“loc”之后“替换”工作?

    我已经尝试了很多次 但似乎在使用 loc 后 替换 不能很好地工作 例如 我想将 conlumn b 替换为 conlumn a 值为 apple 的行的正则表达式 这是我的示例代码 df loc df conlumn a apple co
  • 是否可以在 C++ 中声明 switch 作用域之外的变量?

    简而言之 考虑下面的 伪 代码 switch n case 15 keyword customtemplate lt 15 gt t var I want it to be outside of switch break case 255
  • 在 write.csv 函数中指定路径

    我有一个简单的语法问题 有没有办法指定在其中写入 csv 文件的路径 csv函数本身 我总是做以下事情 setwd C Users user Desktop write csv dt my file csv row names F 不过 我
  • Grails:在普通的 groovy 类中获取数据源

    如何从普通的 groovy 类中访问数据源 注入的工作方式与服务不同 原因是我需要从 groovy 类执行一些手动数据库调用 即 使用 groovy sql Sql 类的 SQL 语句 因为我正在使用旧数据库 dataSource是一个自动
  • .NET C# 中的设置操作

    我现在正在研究与粗糙集相关的东西 该项目使用了大量的集合操作和操作 我一直使用字符串操作作为集合操作的权宜之计 它一直工作得很好 直到我们需要通过算法处理一些大量的数据 500 000 条记录 每条记录大约 40 多列 我知道 net 2
  • JSON SCHEMA:我们可以对类型进行非此即彼(字符串/整数)吗?

    我正在做一个架构来验证联系信息 在电话号码验证中 我们有一个国家代码 我真的希望有一种方法可以让国家 地区代码成为string or an integer 来自不同国家 地区的用户告诉我 国家 地区代码中有时会存在有意义的非整数字符 例如
  • Python 中的 PRTime 到日期时间

    我正在编写一个从文件中检索信息的脚本地点 sqlite 历史 并意识到它以 PRTime 格式存储时间 Python 中是否有可用的方法可以转换此日期时间 还是我必须自己制作 PRTime 是自 1970 01 01 以来的微秒数 请参阅h
  • 如何在 Rails 中的 CSV 解析过程中更改编码

    我想知道导入并解析 CSV 文件时如何更改它的编码 我有这个代码 csv CSV parse output headers gt true col sep gt csv each do row row row to hash with in
  • 我安装了 2 个版本的 python,但 cmake 使用的是旧版本。如何强制 cmake 使用较新版本?

    我安装了 2 个版本的 python 但是cmake正在使用旧版本 我该如何强迫cmake使用较新的版本 您可以根据需要尝试以下任一方法 For CMake gt 3 12 根据变更日志 新的 FindPython3 和 FindPytho
  • 字符串格式和十六进制字符

    有人可以解释为什么这不起作用 string f string Format x 0 00 0 5 string o string Format f INSERT TEXT System Diagnostics Debug WriteLine
  • 在 Laravel-Excel 中导出大数据

    使用此代码 我可以将 MyModel 的数据导出到 Excel 工作正常 Excel create Filename function excel excel gt sheet Contratos function sheet datos