PHPackages                             wamania/zip-streamed-response-bundle - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. wamania/zip-streamed-response-bundle

ActiveSymfony-bundle[File &amp; Storage](/categories/file-storage)

wamania/zip-streamed-response-bundle
====================================

A symfony Response to build and stream Zip on the fly

1.0(9y ago)1192.1k↓36.5%5[2 issues](https://github.com/wamania/ZipStreamedResponseBundle/issues)MITPHPPHP &gt;=5.3.3

Since Oct 17Pushed 9y ago1 watchersCompare

[ Source](https://github.com/wamania/ZipStreamedResponseBundle)[ Packagist](https://packagist.org/packages/wamania/zip-streamed-response-bundle)[ Docs](https://github.com/wamania/ZipStreamedResponseBundle)[ RSS](/packages/wamania-zip-streamed-response-bundle/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (1)Dependencies (1)Versions (2)Used By (0)

ZipStreamedResponseBundle
=========================

[](#zipstreamedresponsebundle)

Largely inspired by [ZipStream-PHP](https://github.com/maennchen/ZipStream-PHP), [PHPZip](https://github.com/paranoiq/PHPZip)and of course, the [ZIP specifications](http://www.pkware.com/documents/casestudies/APPNOTE.TXT).

- [Installation](#installation)
- [Usage](#usage)

Installation
------------

[](#installation)

Require [`wamania/zip-streamed-response-bundle`](https://packagist.org/packages/wamania/zip-streamed-response-bundle)into your `composer.json` file:

```
{
    "require": {
        "wamania/zip-streamed-response-bundle": "dev-master"
    }
}
```

Register the bundle in `app/AppKernel.php`:

```
// app/AppKernel.php
public function registerBundles()
{
    return array(
        // ...
        new Wamania\ZipStreamedResponseBundle\ZipStreamedResponseBundle(),
    );
}
```

Usage
-----

[](#usage)

In your controller :

```
// ....
use Wamania\ZipStreamedResponseBundle\Response\ZipStreamer\ZipStreamer;
use Wamania\ZipStreamedResponseBundle\Response\ZipStreamer\ZipStreamerFile;
use Wamania\ZipStreamedResponseBundle\Response\ZipStreamer\ZipStreamerBigFile;
use Wamania\ZipStreamedResponseBundle\Response\ZipStreamedResponse;

class DefaultController extends Controller
{
    /**
     * @Route("/", name="homepage")
     */
    public function indexAction()
    {
        $zipStreamer = new ZipStreamer('test.zip');

        // Auto switch files above switchAboveSize to "big files"
        ZipStreamer::setAutoSwitch(false/true); // default = true

        // If autoSwitch==true, files above $switchAboveSize will switch to "big files"
        ZipStreamer::setSwitchAboveSize(16777216); // default = 16Mb

        // For big file, size of the buffer for fread
        ZipStreamerBigFile::setBufferSize(1048576); //default = 1Mb

        // first string is localpath on hdd, second is pathname in zip
        $zipStreamer->add(
          '/home/wamania/photo.jpg',
          'images/photo.jpg');

        // you can send directly a ZipStreamerFile object
        $zipStreamer->add(
          new ZipStreamerFile(
            '/home/wamania/movie.mp4',
            'movies/movie.mp4'));

        // Big files are send by stream instead of being charged whole in RAM
        // Big files are NOT compressed
        $zipStreamer->addBigFile(
          '/home/wamania/another-big-movie.mp4',
          'movies/another-big-movie.mp4');

        // or, directly send a ZipStreamerBigFile object
        $zipStreamer->add(
          new ZipStreamerBigFile(
            '/home/wamania/the-big-movie.mp4',
            'movies/the-big-movie.mp4'));

        return new ZipStreamedResponse($zipStreamer);
    }
}
```

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance16

Infrequent updates — may be unmaintained

Popularity38

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

3547d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/5286033?v=4)[Wamania](/maintainers/wamania)[@wamania](https://github.com/wamania)

---

Top Contributors

[![wamania](https://avatars.githubusercontent.com/u/5286033?v=4)](https://github.com/wamania "wamania (15 commits)")

### Embed Badge

![Health badge](/badges/wamania-zip-streamed-response-bundle/health.svg)

```
[![Health](https://phpackages.com/badges/wamania-zip-streamed-response-bundle/health.svg)](https://phpackages.com/packages/wamania-zip-streamed-response-bundle)
```

###  Alternatives

[easycorp/easyadmin-bundle

Admin generator for Symfony applications

4.3k17.9M387](/packages/easycorp-easyadmin-bundle)[symfony/web-profiler-bundle

Provides a development tool that gives detailed information about the execution of any request

2.3k160.5M1.2k](/packages/symfony-web-profiler-bundle)[sylius/resource-bundle

Resource component for Sylius.

23610.8M235](/packages/sylius-resource-bundle)[rcsofttech/audit-trail-bundle

Enterprise-grade, high-performance Symfony audit trail bundle. Automatically track Doctrine entity changes with split-phase architecture, multiple transports (HTTP, Queue, Doctrine), and sensitive data masking.

1189.8k](/packages/rcsofttech-audit-trail-bundle)[ahmed-bhs/doctrine-doctor

Runtime analysis tool for Doctrine ORM integrated into Symfony Web Profiler. Unlike static linters, it analyzes actual query execution at runtime to detect performance bottlenecks, security vulnerabilities, and best practice violations during development with real execution context and data.

9410.8k](/packages/ahmed-bhs-doctrine-doctor)[ecotone/symfony-bundle

Ecotone for Symfony — CQRS, Event Sourcing, Sagas, Durable Workflows, and Outbox on top of Symfony Messenger, via PHP attributes.

11249.0k1](/packages/ecotone-symfony-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
