gzip_compression.php

来自「每个RFC 3261信息头有一个相应的存取标识. 但是,许多信息头拥有同样的形式」· PHP 代码 · 共 50 行

PHP
50
字号
<?php/*  $Id: gzip_compression.php,v 1.3 2003/02/11 01:31:02 hpdl Exp $  osCommerce, Open Source E-Commerce Solutions  http://www.oscommerce.com  Copyright (c) 2003 osCommerce  Released under the GNU General Public License*/  function tep_check_gzip() {    global $HTTP_ACCEPT_ENCODING;    if (headers_sent() || connection_aborted()) {      return false;    }    if (strpos($HTTP_ACCEPT_ENCODING, 'x-gzip') !== false) return 'x-gzip';    if (strpos($HTTP_ACCEPT_ENCODING,'gzip') !== false) return 'gzip';    return false;  }/* $level = compression level 0-9, 0=none, 9=max */  function tep_gzip_output($level = 5) {    if ($encoding = tep_check_gzip()) {      $contents = ob_get_contents();      ob_end_clean();      header('Content-Encoding: ' . $encoding);      $size = strlen($contents);      $crc = crc32($contents);      $contents = gzcompress($contents, $level);      $contents = substr($contents, 0, strlen($contents) - 4);      echo "\x1f\x8b\x08\x00\x00\x00\x00\x00";      echo $contents;      echo pack('V', $crc);      echo pack('V', $size);    } else {      ob_end_flush();    }  }?>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?