Skip to content

Instantly share code, notes, and snippets.

@bastiankoetsier
Last active September 14, 2020 11:13
Show Gist options
  • Save bastiankoetsier/99827fa4754207d860ac to your computer and use it in GitHub Desktop.
Save bastiankoetsier/99827fa4754207d860ac to your computer and use it in GitHub Desktop.
Uncompress .gz-files with php
//This input should be from somewhere else, hard-coded in this example
$file_name = '2013-07-16.dump.gz';
// Raising this value may increase performance
$buffer_size = 4096; // read 4kb at a time
$out_file_name = str_replace('.gz', '', $file_name);
// Open our files (in binary mode)
$file = gzopen($file_name, 'rb');
$out_file = fopen($out_file_name, 'wb');
// Keep repeating until the end of the input file
while(!gzeof($file)) {
// Read buffer-size bytes
// Both fwrite and gzread and binary-safe
fwrite($out_file, gzread($file, $buffer_size));
}
// Files are done, close files
fclose($out_file);
gzclose($file);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment