sinemacula / laravel-resource-exporter
一个通用的Laravel包,用于将JsonResource和JsonResourceCollection对象导出为多种格式,支持自定义驱动。
v1.0.1
2024-08-22 01:04 UTC
Requires
- php: ^8.3
- ext-dom: *
- ext-simplexml: *
- illuminate/http: *
- illuminate/support: *
Requires (Dev)
- laravel/framework: *
- phpunit/phpunit: ^11.0
This package is auto-updated.
Last update: 2024-09-22 01:12:10 UTC
README
Laravel Resource Exporter是一个通用的包,允许将Laravel的JsonResource和JsonResourceCollection对象无缝转换为各种可导出格式。该包旨在提供可扩展性,允许您通过基于驱动的架构轻松添加自定义导出格式。
特性
- 格式灵活性:使用可自定义的驱动将资源导出为各种格式,便于扩展或适应新的格式。
- 基于驱动的架构:每个导出格式由专门的驱动类处理,确保代码清晰、可维护和可扩展。
- 外观支持:利用直观的外观轻松访问导出功能,简化资源转换过程。
支持的驱动
- CSV
- XML
安装
要在项目中安装Laravel Resource Exporter,请在项目目录中运行以下命令
composer require sinemacula/laravel-resource-exporter
配置
安装后,发布包配置以根据您的需求进行自定义
php artisan vendor:publish --provider="SineMacula\Exporter\ExporterServiceProvider"
此命令将包配置文件发布到您的应用程序配置目录,允许您修改诸如可用的导出格式、驱动配置等。
使用方法
Laravel Resource Exporter提供了一个易于使用的接口用于导出资源。以下是一个导出资源或集合的示例
use SineMacula\Exporter\Facades\Exporter; use App\Http\Resources\YourResource; // Export an item as CSV $csv = Exporter::format('csv')->exportItem(new YourResource($item)); // Export a collection as XML $xml = Exporter::format('xml')->exportCollection(YourResource::collection($collection));
贡献
欢迎贡献并会得到充分认可。我们接受通过GitHub上的拉取请求进行贡献。
安全
如果您发现任何安全相关的问题,请通过电子邮件而不是使用问题跟踪器。
许可证
Laravel Resource Exporter仓库是开源软件,根据Apache许可证,版本2.0授权。