indefero/contrib/zipstream-php-0.2.2
Thomas Keller fe001abd26 Rework the way IDF's SCM interface provides downloadable snapshots.
Instead of returning a command which gets executed and which should
pass through / stream its output data to the client, we're just
returning an instance of Pluf_HTTP_Response. This is needed, because
some SCMs, most noticable monotone, have no locally executable command
to provide a snapshot archive (and probably never will for our kind
of setup).

We therefor added a little BSD-licensed class "ZipArchive" which allows
the creation of pkzip-compatible archives on the fly by letting it eat
the file contents directly feed from the (remote) stdio instance.
Download performance is ok and lies between 15K/s and 110K/s, but at
least we do no longer block the browser while we pre-generate the zip
file server-side.

Thanks to Patrick Georgi for all his work!
2010-10-30 21:52:40 +00:00
..
extras Rework the way IDF's SCM interface provides downloadable snapshots. 2010-10-30 21:52:40 +00:00
test Rework the way IDF's SCM interface provides downloadable snapshots. 2010-10-30 21:52:40 +00:00
COPYING Rework the way IDF's SCM interface provides downloadable snapshots. 2010-10-30 21:52:40 +00:00
README Rework the way IDF's SCM interface provides downloadable snapshots. 2010-10-30 21:52:40 +00:00
zipstream.php Rework the way IDF's SCM interface provides downloadable snapshots. 2010-10-30 21:52:40 +00:00

ZipStream 0.2.2 README
======================

Please see the file COPYING for licensing and warranty information.  The
latest version of this software is available at the following URL:

    http://pablotron.org/software/zipstream-php/

Overview
========
A fast and simple streaming zip file downloader for PHP.  Here's a
simple example:

    # create a new zipstream object
    $zip = new ZipStream('example.zip');

    # create a file named 'hello.txt' 
    $zip->add_file('some_image.jpg', 'This is the contents of hello.txt');

    # add a file named 'image.jpg' from a local file 'path/to/image.jpg'
    $zip->add_file_from_path('some_image.jpg', 'path/to/image.jpg');

    # finish the zip stream
    $zip->finish();

You can also add comments, modify file timestamps, and customize (or
disable) the HTTP headers.  See the class file for details.  There are a
couple of additional examples in the initial release announcement at the
following URL:

    http://pablotron.org/?cid=1535

Requirements
============

  * PHP version 5.1.2 or newer (specifically, the hash_init and
    hash_file functions).

About the Author
================
Paul Duncan <pabs@pablotron.org>
http://pablotron.org/