package and depencies
This commit is contained in:
33
vendor/maennchen/zipstream-php/guides/FlySystem.rst
vendored
Normal file
33
vendor/maennchen/zipstream-php/guides/FlySystem.rst
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
Usage with FlySystem
|
||||
===============
|
||||
|
||||
For saving or uploading the generated zip, you can use the
|
||||
`Flysystem <https://flysystem.thephpleague.com>`_ 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);
|
Reference in New Issue
Block a user