【问题标题】:Why is my Laravel Export returning a blank sheet?为什么我的 Laravel Export 返回一张空白表?
【发布时间】:2017-09-29 16:50:05
【问题描述】:

我正在使用 Laravel Export 导出一些数据的 excel 文件。当我创建查询并使用dd() 检查数据的样子时,一切看起来都很好。例如:

dd($result);

array:510 [▼
    0 => array:24 [▼
        "abc" => "123"
        "foo" => "bar"
        "key" => "value"
        ...
        "pivot" => array:4 [ …4]
    1 => array:24 [▼
        ...
 ]

这是我的导出方法的样子:

Excel::create('my-file', function ($excel) use ($result) {
    $excel->sheet('Page1', function ($sheet) use ($result) {
        $sheet->fromArray(array($result));
    });
})->export('xlsx');

上面生成了一个完全空白的excel文件。

我不确定如何解决此问题。似乎我传递了良好的数据,但得到了一张空纸。

感谢任何建议!

【问题讨论】:

  • 我认为通过使用 get() 而不是数组格式来获取对象格式的数据是件好事吗?试试这个 fromArray($result) 适用于 get 方法..
  • 每个索引的键名是否相同?并在将值传递给 $sheet->fromArray() 之前尝试 dd

标签: laravel laravel-excel


【解决方案1】:

试试这个 -

Excel::create('my-file', function ($excel) {
    $excel->sheet('Page1', function ($sheet) {
        $sheet->fromArray($result);
    });
})->export('xlsx');

也参考这个链接 - http://www.maatwebsite.nl/laravel-excel/docs/export 为Creating a sheet from an array

希望这会对你有所帮助。

【讨论】:

    【解决方案2】:

    试试

    $sheet->fromArray((array)$result);
    

    【讨论】:

      猜你喜欢
      • 2020-05-27
      • 2018-09-18
      • 1970-01-01
      • 2021-01-19
      • 2019-10-23
      • 1970-01-01
      • 1970-01-01
      • 2020-11-23
      • 1970-01-01
      相关资源
      最近更新 更多