class Gzip
{
- public static function compressIfNotCompressed($filename)
- {
- if (file_exists($filename) && file_exists($filename . '.gz')) {
- if (filemtime($filename) >= filemtime($filename . '.gz')) {
- unlink($filename . '.gz');
- } else {
- unlink($filename);
- }
- }
- if (file_exists($filename) && !file_exists($filename . '.gz')) {
- `gzip $filename`;
- }
- }
+ public static function compressIfNotCompressed($filename)
+ {
+ if (file_exists($filename) && file_exists($filename . '.gz')) {
+ if (filemtime($filename) >= filemtime($filename . '.gz')) {
+ unlink($filename . '.gz');
+ } else {
+ unlink($filename);
+ }
+ }
- public static function unlink($filename)
- {
- if (file_exists($filename)) {
- unlink($filename);
- }
- if (file_exists($filename . '.gz')) {
- unlink($filename . '.gz');
- }
- }
+ if (file_exists($filename) && !file_exists($filename . '.gz')) {
+ `gzip $filename`;
+ }
+ }
- public static function file_exists($filename)
- {
- return file_exists($filename . '.gz') || file_exists($filename);
- }
+ public static function unlink($filename)
+ {
+ if (file_exists($filename)) {
+ unlink($filename);
+ }
+ if (file_exists($filename . '.gz')) {
+ unlink($filename . '.gz');
+ }
+ }
- public static function filemtime($filename)
- {
- if (file_exists($filename . '.gz')) {
- return filemtime($filename . '.gz');
- } else if (file_exists($filename)) {
- return filemtime($filename);
- } else {
- return false;
- }
- }
+ public static function file_exists($filename)
+ {
+ return file_exists($filename . '.gz') || file_exists($filename);
+ }
- public static function file_get_contents($filename)
- {
- self::_filename($filename);
- $fp = self::_fopen($filename, 'rb');
- $res = stream_get_contents($fp);
- fclose($fp);
- return $res;
- }
+ public static function filemtime($filename)
+ {
+ if (file_exists($filename . '.gz')) {
+ return filemtime($filename . '.gz');
+ } else if (file_exists($filename)) {
+ return filemtime($filename);
+ } else {
+ return false;
+ }
+ }
- public static function file_put_contents($filename, $data, $compression = 7, $mode = 'w')
- {
- self::_filename($filename, true);
- $fp = self::_fopen($filename, $mode, $compression);
- $res = fwrite($fp, $data);
- fclose($fp);
- return $res;
- }
+ public static function file_get_contents($filename)
+ {
+ self::_filename($filename);
+ $fp = self::fopen($filename);
+ $res = stream_get_contents($fp);
+ fclose($fp);
+ return $res;
+ }
- protected static function _fopen($filename, $mode, $compression = 7)
- {
- $protocol = self::_protocol($filename);
- if ($protocol == 'compress.zlib://') {
- $mode .= $compression;
- }
- return fopen($protocol . $filename, $mode);
- }
+ public static function file_put_contents($filename, $data, $compression = 7, $mode = 'w')
+ {
+ self::_filename($filename, true);
+ $fp = self::fopen($filename, $mode, $compression);
+ $res = fwrite($fp, $data);
+ fclose($fp);
+ return $res;
+ }
- protected static function _protocol($filename)
- {
- if (Files::getExtension($filename) == 'gz') {
- $protocol = 'compress.zlib://';
- } else {
- $protocol = '';
- }
- return $protocol;
- }
+ protected static function fopen($filename, $mode='rb', $compression = 7)
+ {
+ $protocol = self::_protocol($filename);
+ if ($protocol == 'compress.zlib://') {
+ $mode .= $compression;
+ }
+ return fopen($protocol . $filename, $mode);
+ }
- protected static function _filename(&$filename, $forceGzip = false)
- {
- if ($forceGzip || (!file_exists($filename) && file_exists($filename . '.gz'))) {
- $filename .= '.gz';
- }
- }
+ protected static function _protocol($filename)
+ {
+ if (Files::getExtension($filename) == 'gz') {
+ $protocol = 'compress.zlib://';
+ } else {
+ $protocol = '';
+ }
+ return $protocol;
+ }
+
+ protected static function _filename(&$filename, $forceGzip = false)
+ {
+ if ($forceGzip || (!file_exists($filename) && file_exists($filename . '.gz'))) {
+ $filename .= '.gz';
+ }
+ }
}