<?php
// Name of the file we are compressing
$file = "test.txt";
// Name of the gz file we are creating
$gzfile = "sitemap.xml.gz";
// Open the gz file (w9 is the highest compression)
$fp = gzopen ($gzfile, 'w9');
// Compress the file
gzwrite ($fp, file_get_contents($file));
// Close the gz file and we are done
gzclose($fp);
?>

http://blog.sina.com.cn/s/blog_49cc837a0101c602.html