think.studio/laravel-download-util

用于创建下载归档的工具。

1.2.0 2023-08-20 10:12 UTC

This package is auto-updated.

Last update: 2024-09-20 12:55:42 UTC


README

Packagist License Packagist Version Total Downloads Build Status Code Coverage Scrutinizer Code Quality

用于创建下载归档的工具。

安装

通过composer安装此包

composer require think.studio/laravel-download-util

可选,您可以使用以下命令发布配置文件

php artisan vendor:publish --provider="LaravelDownloadUtil\ServiceProvider" --tag="config"

用法

归档器

ZipArchiver

$storage = Storage::disk('my-disk');

$zipFileName = (new ZipArchiver($storage))
            ->setArchiveCreationCallback(function ($archive, $files,) {
                foreach ($files as $directory => $filesList) {
                    foreach ($filesList as $fileName => $file) {
                        $archive->addFile($file, "{$directory}/".Str::afterLast($fileName, '/'));
                    }
                }
            })->create($files, "app/assets-".Carbon::now()->format('Y-m-d-his'));

if($zipFileName) {
    return $storage->url($zipFileName)''
}

命令

$schedule->command('download-util:prune-outdated prunable_downloads -S 36000 -E ".zip"')->everyThirtyMinutes();

致谢

  • Think Studio