©
This document uses PHP Chinese website manual Release
(PECL mongo >=0.9.0)
MongoGridFSFile::write — Writes this file to the filesystem
$filename
= NULL
] )
filename
The location to which to write the file. If none is given, the stored filename will be used.
Returns the number of bytes written.
Example #1 MongoGridFSFile::write() example
<?php
$images = $db -> my_db -> getGridFS ( 'images' );
$image = $images -> findOne ( 'jwage.png' );
$image -> write ( '/path/to/write/jwage.png' );
?>
[#1] dimzon541 at gmail dot com [2015-08-11 20:06:03]
write method produce a huge memory leak!
workaround: use getResource
==============8<===========================
$chunkSize = intval($f->file['chunkSize']);
//echo $chunkSize;
$stream = $f->getResource();
$outStream = fopen($tmp,'wb');
while (!feof($stream)) {
fwrite($outStream, fread($stream, $chunkSize));
}
fclose($stream);
fclose($outStream);
unset($stream);
unset($outStream);
==============8<===========================