gpt4 book ai didi

excel - 具有多个表格的单个 Excel 工作表 Laravel/Excel

转载 作者:行者123 更新时间:2023-12-04 19:48:04 27 4
gpt4 key购买 nike

我目前正在使用 Maatwebsite 的 Excel 包,并且能够很好地生成一个包含我想要的列和值的表格,但我希望能够生成表格,其他表格位于单个 Excel 工作表的下方。可能吗?

Current Result

上面附上的屏幕截图是我现在能够生成的 excel 文件,下面的屏幕截图是我要生成的 excel 文件的示例,表格在另一个表格下面。有没有办法在单个 Excel 导出类中执行此操作?

Wanted result

最佳答案

我不相信你会找到一种方法来只使用 Laravel Excel 来做到这一点——大多数人会为每个数据集创建一个新工作表。但最终,如果您手动构建输出数组,您可以按照自己喜欢的方式格式化数据。

这是您可以做到的一种方法。

Controller
将数组直接传递给导出类,而不是集合。

$arrays = [$level_one_array, $level_two_array, $level_three_array];

return Excel::download(new YourExportClass($arrays), 'YourFilename.xlsx');

导出
构建与所需布局对应的输出数组,然后将其包装在一个集合中。

class YourExportClass implements FromCollection
{
use Exportable;

private $collection;

public function __construct($arrays)
{
$output = [];

foreach ($arrays as $array) {
// get headers for current dataset
$output[] = array_keys($array[0]);
// store values for each row
foreach ($array as $row) {
$output[] = array_values($row);
}
// add an empty row before the next dataset
$output[] = [''];
}

$this->collection = collect($output);
}

public function collection()
{
return $this->collection;
}
}

关于excel - 具有多个表格的单个 Excel 工作表 Laravel/Excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57666761/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com