function copy_to_stream in Lockr 7.3
Copy the contents of a stream into another stream until the given number of bytes have been read.
Parameters
StreamInterface $source Stream to read from:
StreamInterface $dest Stream to write to:
int $maxLen Maximum number of bytes to read. Pass -1: to read the entire stream.
Throws
\RuntimeException on error.
2 calls to copy_to_stream()
- CachingStream::cacheEntireStream in vendor/
guzzlehttp/ psr7/ src/ CachingStream.php - UploadedFile::moveTo in vendor/
guzzlehttp/ psr7/ src/ UploadedFile.php
File
- vendor/
guzzlehttp/ psr7/ src/ functions.php, line 373
Namespace
GuzzleHttp\Psr7Code
function copy_to_stream(StreamInterface $source, StreamInterface $dest, $maxLen = -1) {
$bufferSize = 8192;
if ($maxLen === -1) {
while (!$source
->eof()) {
if (!$dest
->write($source
->read($bufferSize))) {
break;
}
}
}
else {
$remaining = $maxLen;
while ($remaining > 0 && !$source
->eof()) {
$buf = $source
->read(min($bufferSize, $remaining));
$len = strlen($buf);
if (!$len) {
break;
}
$remaining -= $len;
$dest
->write($buf);
}
}
}