ralphmorris / exporter
将模型集合导出为csv文件
1.0.2
2019-10-19 06:33 UTC
Requires (Dev)
- phpunit/phpunit: ^6.5@dev
This package is auto-updated.
Last update: 2024-09-19 17:21:12 UTC
README
Exporter 是一个Laravel的包,它提供了一种简单的csv导出方式,可以将任何模型集合导出。
安装
composer require ralphmorris/exporter
用法
在你的控制器中使用
use RalphMorris\Exporter\Exporter;
然后在你的方法中,一个简单的调用可能如下所示
public function export() { $users = User::get(); $exporter = new Exporter; return $exporter->exportToCsv($users); }
你也可以通过提供第二个参数来指定文件名。
return $exporter->exportToCsv($users, 'my-file-name.csv');
指定要导出的列
如果你只想从模型中导出某些列,只需在模型类中包含 ExportableColumnsTrait 特性,并定义一个受保护的属性 $exportableColumns,它是一个包含你希望导出的字段的数组。
例如
<?php namespace App; use Illuminate\Database\Eloquent\Model; use RalphMorris\Exporter\ExportableColumnsTrait; class User extends Model { use ExportableColumnsTrait; /** * The columns that are exportable to CSV * * @var array */ protected $exportableColumns = [ 'name', 'email', ];
然后在你的查询中,像以下示例一样调用查询范围 exportableColumns()。
public function export() { $users = User::exportableColumns()->get(); $exporter = new Exporter; return $exporter->exportToCsv($users); }