<?php
$data = openssl_random_pseudo_bytes(65536);
$params = array('level' => 6, 'window' => 15, 'memory' => 9);
$fp = fopen('php://memory', 'wb+');
$filter = stream_filter_append($fp, 'zlib.deflate', STREAM_FILTER_WRITE, $params);
fputs($fp, $data);
stream_filter_remove($filter);
rewind($fp);
echo substr(bin2hex($streamA = stream_get_contents($fp)), 0, 32) . "\n";
echo substr(bin2hex($streamB = gzcompress($data)), 0, 32) . "\n";
var_dump($streamA === $streamB);
preferences:
25.61 ms | 414 KiB | 5 Q