1
0
mirror of https://github.com/Ne-Lexa/php-zip.git synced 2025-03-21 06:59:40 +01:00

Файлы при записывании в кеш не могут считаться

Привет! Спасибо за такой прекрасный модуль для работы с архивами!
Нашел такой глюк. При превышении размера 524288 файлы записывается в php://temp. При запросе данных из кеша stream_get_contents ничего не выводит. В fopen mode поменял на r+b, что включился режим записи. При запросе данных из stream нужно установить указатель в начало файла, поэтому перед ним вставил функцию rewind($this->entryContent);
This commit is contained in:
litlife 2018-04-09 18:09:19 +03:00 committed by GitHub
parent d0cf7f7d1d
commit 8de3a70571
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -66,12 +66,13 @@ class ZipSourceEntry extends ZipAbstractEntry
if ($this->getSize() < self::MAX_SIZE_CACHED_CONTENT_IN_MEMORY) {
$this->entryContent = $content;
} else {
$this->entryContent = fopen('php://temp', 'rb');
$this->entryContent = fopen('php://temp', 'r+b');
fwrite($this->entryContent, $content);
}
return $content;
}
if (is_resource($this->entryContent)) {
rewind($this->entryContent);
return stream_get_contents($this->entryContent, -1, 0);
}
return $this->entryContent;