Usage with FlySystem =============== For saving or uploading the generated zip, you can use the `Flysystem `_ package, and its many adapters. For that you will need to provide another stream than the ``php://output`` default one, and pass it to Flysystem ``putStream`` method. .. code-block:: php // Open Stream only once for read and write since it's a memory stream and // the content is lost when closing the stream / opening another one $tempStream = fopen('php://memory', 'w+'); // Init Options $zipStreamOptions = new Archive(); $zipStreamOptions->setOutputStream($tempStream); // Create Zip Archive $zipStream = new ZipStream('test.zip', $zipStreamOptions); $zipStream->addFile('test.txt', 'text'); $zipStream->finish(); // Store File (see Flysystem documentation, and all its framework integration) $adapter = new Local(__DIR__.'/path/to/folder'); // Can be any adapter (AWS, Google, Ftp, etc.) $filesystem = new Filesystem($adapter); $filesystem->putStream('test.zip', $tempStream) // Close Stream fclose($tempStream);