Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Zend Mvc Plugin Fileprg Laravel Package

zendframework/zend-mvc-plugin-fileprg

A Zend Framework MVC controller plugin that implements the File Post/Redirect/Get pattern, letting you validate uploads before redirecting and preserve file upload state across requests.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for file-upload PRG handling. zend-mvc-plugin-fileprg is a thin, single-purpose controller plugin that implements Post/Redirect/Get for forms containing file uploads: it stashes uploaded files in session between the POST and the follow-up GET, then re-injects them into the request on redirect. That is roughly a day of custom work plus ongoing edge-case maintenance — cheap to buy, cheap to replace, so treat it as a low-stakes dependency decision rather than an architectural one.
  • Feature scope for upload flows. Directly supports decisions about how your forms behave on validation failure: does the user have to re-select files after a failed submit? This plugin is the difference between "re-upload the 20 MB PDF" and "fix the field and resubmit." That is a UX/retention feature, not just plumbing.
  • Platform support matrix / upgrade roadmap. 1.1.0 adds PHP 7.1 and 7.2 support and drops HHVM. Net effect: broadens supported runtime for mainstream PHP, narrows it for HHVM holdouts. If any service still runs HHVM (unlikely), this release is effectively a pin-to-1.0.x signal.
  • Ecosystem and longevity risk. This is a Zend Framework MVC plugin, not a Laravel package. It has no place in a Laravel application's HTTP stack — Laravel's redirect()->withInput() plus its own session/upload handling already covers PRG. Adopting this constrains you to zend-mvc (ZF2/ZF3), which is in maintenance mode with the ecosystem migrated to Laminas. That is a roadmap input, not a blocker: plan the laminas-mvc-plugin-fileprg swap (near drop-in rename) alongside any PHP 7.2+ modernization.
  • Use cases that justify it: multi-step wizards with attachments, upload forms with heavy server-side validation, any flow where a duplicate submit is expensive (billing, ticketing, submissions with quotas).

When to Consider This Package

Adopt when all of the following hold:

  • You are on zend-mvc (ZF2/ZF3) and have file-upload forms where validation failures or refresh-happy users cause re-upload pain or duplicate submissions.
  • You are on PHP 7.1 or 7.2 (this release is what makes those runtimes officially supported) and do not need HHVM.
  • You want a small, dependency-light, framework-idiomatic plugin rather than bespoke session-juggling code.

Look elsewhere when:

  • You are on Laravel. This does not integrate. Use Laravel's native old-input/session flashing, or a purpose-built package.
  • You are on Laminas already, or planning to move — go straight to laminas-mvc-plugin-fileprg instead of adopting an EOL-branded dependency.
  • You need async/chunked uploads, S3/direct-to-storage, virus scanning, or image processing — this plugin only preserves files across a redirect; it is not an upload pipeline.
  • You need active feature development. The 1.1.0 changelog is compatibility housekeeping only ("Changed: Nothing. Fixed: Nothing."). Expect maintenance-mode velocity.

How to Pitch It (Stakeholders)

For executives: A tiny, free component that prevents users from losing their file uploads when a form submission fails or a page is refreshed — a small but real UX and duplicate-submission win, at effectively zero cost. The caveat is lifecycle, not capability: it belongs to the Zend Framework family, which is now in maintenance and has moved to Laminas. Recommendation is to adopt only where already on zend-mvc, and to budget the rename-style migration to laminas-mvc-plugin-fileprg as part of the next platform upgrade. No action required for our Laravel services.

For engineering: Version 1.1.0 is a compatibility release — PHP 7.1/7.2 support added (PR #10), HHVM support removed, no functional changes, no deprecations, no breaking changes for supported runtimes. Safe to bump within a zend-mvc codebase. Two things to log: (1) HHVM is now unsupported, so any lingering HHVM CI job must be retired or pinned to 1.0.x; (2) the upstream namespace is Zend, not Laminas — treat this as a stopgap and schedule the migration. Scope of the library is intentionally narrow: session-backed file stashing across a redirect. It does not handle storage, scanning, or upload transport, so don't scope those expectations onto it.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings