downloadToStream() public method

Writes the contents of this GridFS file to a writable stream.
public downloadToStream ( resource $destination )
$destination resource Writable stream
Beispiel #1
0
 /**
  * Writes the contents of a GridFS file, which is selected by name and
  * revision, to a writable stream.
  *
  * Supported options:
  *
  *  * revision (integer): Which revision (i.e. documents with the same
  *    filename and different uploadDate) of the file to retrieve. Defaults
  *    to -1 (i.e. the most recent revision).
  *
  * Revision numbers are defined as follows:
  *
  *  * 0 = the original stored file
  *  * 1 = the first revision
  *  * 2 = the second revision
  *  * etc…
  *  * -2 = the second most recent revision
  *  * -1 = the most recent revision
  *
  * @param string   $filename Filename
  * @param resource $destination Writable Stream
  * @param array    $options Download options
  *
  * @throws FileNotFoundException
  */
 public function downloadToStreamByName($filename, $destination, array $options = [])
 {
     $options += ['revision' => -1];
     $file = $this->collectionWrapper->findFileByFilenameAndRevision($filename, $options['revision']);
     if ($file === null) {
         throw FileNotFoundException::byFilenameAndRevision($filename, $options['revision'], $this->getFilesNamespace());
     }
     $stream = new ReadableStream($this->collectionWrapper, $file);
     $stream->downloadToStream($destination);
 }