定制 nimblephp/storagebox 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nimblephp/storagebox

Composer 安装命令:

composer require nimblephp/storagebox

包简介

Universal file storage module for NimblePHP - stores files (local/MinIO/S3) with metadata in the database

README 文档

README

Uniwersalny moduł przechowywania plików dla NimblePHP. Zapisuje pliki przez wybrany driver (lokalny system plików lub MinIO/S3) i przechowuje ich metadane w bazie danych (tabela module_storage_file).

Zawartość

  • Module — rejestracja modułu i uruchamianie migracji (onUpdate)
  • ModuleStorageFileModel — manager plików (zapis, kopiowanie, pobieranie, duplikacja, usuwanie, auto-usuwanie)
  • MinioStorage — driver MinIO / AWS S3 (rozszerza NimblePHP\Framework\Storage)
  • StorageProvider — enum providerów (storage, minio)
  • StorageBoxException — wyjątek modułu
  • src/Migrations/ — migracja tworząca tabelę module_storage_file

Instalacja

composer require nimblephp/storage-box

Migracja

Migracje uruchamiają się automatycznie przy aktualizacji aplikacji (Module::onUpdate(), grupa module_storage_file). Można też uruchomić ręcznie:

php vendor/bin/nimble migration:run --dir=vendor/nimblephp/storage-box/src/Migrations

Użycie

use NimblePHP\Storagebox\ModuleStorageFileModel;
use NimblePHP\Storagebox\StorageProvider;

$model = $this->loadModel(ModuleStorageFileModel::class);
$model->provider = StorageProvider::minio; // domyślnie StorageProvider::storage

// zapis z zawartości
$id = $model->write($content, type: 'avatar', fileName: 'photo.jpg');

// kopiowanie z lokalnej ścieżki
$id = $model->copy('/tmp/upload.jpg', type: 'attachment', fileName: 'upload.jpg');

// pobranie zawartości
$content = $model->getFileContent($id);

// usunięcie
$model->setId($id)->deleteFile();

Konfiguracja MinIO / S3 (zmienne środowiskowe)

  • MINIO_HOST — endpoint MinIO; puste = tryb AWS S3
  • MINIO_BUCKET
  • MINIO_REGION
  • MINIO_USERNAME
  • MINIO_PASSWORD

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-06-30

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固