// Process try $result = $upload->process(); echo "File saved as: " . $result->getFilename(); catch (Pakupakis\Exception\ValidationException $e) echo "Invalid file: " . $e->getMessage(); catch (Exception $e) echo "Upload failed: " . $e->getMessage();
| Adapter | Use Case | |---------|----------| | Local | Development, private servers | | S3 Compatible | AWS, MinIO, DigitalOcean Spaces | | FTP/SFTP | Legacy systems, remote storage | | Memory | Testing, temporary processing | Installation (PHP) composer require pakupakis/fileupload Basic Implementation require 'vendor/autoload.php'; use Pakupakis\FileUpload; pakupakis fileupload
// PHP Example $upload = new Pakupakis\FileUpload($_FILES['documents']); foreach($upload->getFiles() as $file) $file->validate(['size' => '5MB', 'type' => ['pdf', 'docx']]); $file->save('/storage/documents/'); // Process try $result = $upload->process(); echo "File
1. User Profile Pictures with Automatic Resizing $upload = new Pakupakis\FileUpload($_FILES['profile_pic']); $upload->onAfterSave(function($file) $image = new \Imagick($file->getPath()); $image->resizeImage(200, 200, \Imagick::FILTER_LANCZOS, 1); $image->writeImage($file->getPath()); ); 2. Streaming to Cloud Storage Without Local Temp Files # Python example from pakupakis import CloudUpload upload = CloudUpload(request.files['video'], provider='s3') upload.stream_to_bucket( bucket_name='user-content', object_key=f"videos/uuid4().mp4", chunk_size=8192 ) 3. Secure Document Submission for Compliance (HIPAA / GDPR) Pakupakis includes audit logging and automatic encryption at rest: Secure Document Submission for Compliance (HIPAA / GDPR)