kekos/multipart-form-data-parser
Parse multipart/form-data bodies in PHP, including raw HTTP input. Useful for handling file uploads and form fields when your environment doesn’t populate $_FILES/$_POST (e.g., non-standard servers, PUT/PATCH requests).
multipart/form-data requests, which is critical for handling file uploads, form submissions with mixed data types (files + fields), or APIs requiring multipart payloads (e.g., AWS S3 uploads, direct file processing). It fits well in:
Request class already handles multipart parsing via Symfony’s HttpFoundation, but this package could offer:
Request lifecycle (e.g., middleware, form requests).Request class already parses multipart data. This package may not add value unless it solves a specific niche (e.g., parsing non-standard multipart formats).HttpFoundation.HttpFoundation (e.g., custom validation, streaming for large files)?Symfony\Component\HttpFoundation/FileBag or League\MimeTypeDetection be combined for similar results with lower risk?Request object is fully built (e.g., for early validation).FormRequest to use this package for custom parsing logic.symfony/http-foundation or league/mime-type-detection.request()->file(), request()->all()).composer require kekos/multipart-form-data-parser).MultipartParserFacade).composer.json to avoid unexpected updates.composer.json replace directives to manage forks.MultipartParseException).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Malformed multipart request | 500 errors, failed uploads | Validate boundaries early; fallback to native parser. |
| Large file DoS | High memory usage, crashes | Set upload limits (e.g., post_max_size in PHP). |
| Package version incompatibility | Breaks parsing | Use version pinning; test on every Laravel minor update. |
| Race conditions in parsing | Corrupted data | Ensure thread-safe parsing in concurrent environments. |
| Package abandonment | Unpatched vulnerabilities | Fork and maintain internally. |
MultipartParser").File objects with custom metadata").How can I help you explore Laravel packages today?