programster / upload-file-manager
A library to make handling file uploads easier.
Package info
github.com/programster/package-upload-file-manager
pkg:composer/programster/upload-file-manager
2.0.0
2026-04-04 18:29 UTC
This package is not auto-updated.
Last update: 2026-04-04 18:30:31 UTC
README
A package to make it easy to deal with upload files.
Install
composer require programster/upload-file-manager
Example Usage
$uploadManager = new Programster\UploadFileManager\UploadFileManager(); $map = $uploadManager->getUploadFileMap(); if (array_key_exists('my_file_input_field_name', $map)) { /* @var $file Programster\UploadFileManager\UploadFile */ $uploadFiles = $map['my_file_input_field_name']; foreach ($uploadFiles as $uploadFile) { if ($uploadFile->hasError()) { throw $file->getException(); } else { // Upload was successful, do something with the file here. $uploadFile->getFilepath(); $uploadFile->getSize(); $uploadFile->getName(); $uploadFile->getMimeType(); $uploadFile->getFormFieldName(); } } }
... or alternatively:
$uploadManager = new Programster\UploadFileManager\UploadFileManager(); $files = $uploadManager->getUploadFiles(); if (count($files) > 0) { foreach ($files as $uploadFile) { if ($uploadFile->hasError()) { throw $file->getException(); } else { // Upload was successful, do something with the file here. $uploadFile->getFilepath(); $uploadFile->getSize(); $uploadFile->getName(); $uploadFile->getMimeType(); $uploadFile->getFormFieldName(); } } }
If your form has multiple input fields for files:
$uploadManager = new Programster\UploadFileManager\UploadFileManager(); $files = $uploadManager->getUploadFileMap(); if (count($files) > 0) { // some files were uploaded, loop thorugh them. foreach ($files as $inputFieldName => $file) { /* @var $file Programster\UploadFileManager\UploadFile */ if ($file->hasError()) { throw $file->getException(); } else { // Upload was successful, do something with the file here. $uploadFile->getFilepath(); $uploadFile->getSize(); $uploadFile->getName(); $uploadFile->getMimeType(); } } }