vsolution-dev / laravel-zipper
这个软件包的官方仓库似乎已消失,因此该软件包已被冻结。
0.0.2
2024-05-20 13:01 UTC
Requires
- php: >=7.4
- illuminate/support: 5.8.*||^6.0||^7.0||^8.0||^9.0||^10.0||^11.0
README
Laravel Zipper 库
此库为 Laravel 应用程序提供了一种方便的压缩文件的方式。
安装
您可以使用 Composer 安装此库。运行以下命令
composer require vsolution-dev/laravel-zipper
安装后,您需要在 app.php
配置文件中添加服务提供者和外观。
将以下行添加到 providers
数组
VSolutionDev\LaravelZipper\ServiceProvider::class,
并将以下行添加到 aliases
数组
'Zipper' => VSolutionDev\LaravelZipper\Facades\Zipper::class,
要求
此库需要 PHP 7.4 或更高版本。在安装之前,请确保您的服务器满足此要求。
用法
要使用此库,您可以参考以下示例
$files = collect(); Qrcode::query() ->lazyById(1000) ->each(function ($qrcode) use ($files) { $files->add([ 'url' => $qrcode->url, // http://www.example.com/qrcode.png 'name' => "{$qrcode->id}.png" ]); }); Zipper::queue($files, 'qrcodes.zip', 's3') ->allOnQueue('longtime') ->chain([ (new SendMail())->attachFromStorageDisk('qrcodes.zip', 's3') ]);
在此示例中,我们使用 Zipper::queue() 对文件进行排队,然后将其与 SendMail 作业链式连接。SendMail 作业负责发送带有压缩文件的电子邮件。它使用 attachFromStorageDisk() 方法从指定的存储磁盘(在本例中为 's3')附加压缩文件。
请确保您已定义 SendMail 作业并具有适当的逻辑以发送电子邮件。您可能需要根据您的电子邮件发送实现对其进行自定义。