Скрипт генерирует контент на основе данных из базы (предположим это выгрузка в формате csv). Хотелось бы применить архивирование к результату, но так, чтобы не создавать временных файлов на диске. Возможно ли это осуществить в памяти и как? Пока делается так: final class ClassPrefixGzipStream extends ClassPrefixStream { private $handle final public function open() { $this->handle = gzopen(TEMP_PATH . $this->uniqueID, "w9") } final public function write($string) { gzwrite($this->handle, $string) } final public function close() { gzclose($this->handle) } }
Ответ Используйте метод gzdeflate() This function compress the given string using the DEFLATE data format. For details on the DEFLATE compression algorithm see the document "DEFLATE Compressed Data Format Specification version 1.3" (RFC 1951).