HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

GZip сжатие.
  #1  
Старый 05.04.2008, 03:15
[x26]VOLAND
Постоянный
Регистрация: 07.06.2006
Сообщений: 556
С нами: 10487846

Репутация: 2702


Lightbulb GZip сжатие.

Реализация GZip сжатия. Новичкам может помочь.

PHP код:
function Gzip($debug=0$level=9) {

    function 
GzipEnc() {
        if (
headers_sent() || connection_aborted())
        {
            return 
0
        }
        if (
strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'x-gzip') !== false) return "x-gzip"
        if (
strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') !== false) return "gzip";
        return 
0
    }

    
header("Last-Modified: " date('r'time()-60*60*10) ." GMT");
    if (
config('gzip') != 1)
    {
        if (
$debug) echo $sob_end_flush(); return;
    }

    
$enc GzipEnc();
    if (
$enc)
    {
        
$s "\n<!-- Для вывода использовалось сжатие $enc -->\n"
        
$Contents ob_get_contents();
        
ob_end_clean(); 
        if (
$debug)
        {
            
$s .= "<!-- Общий размер файла: ".strlen($Contents)." байт ";
            
$s .= "После сжатия: ".strlen(gzcompress($Contents$level))." байт -->";
            
$Contents .= $s;
        }
        
header("Content-Encoding: $enc");
        print 
"\x1f\x8b\x08\x00\x00\x00\x00\x00";
        
$Size strlen($Contents);
        
$Crc crc32($Contents);
        
$Contents gzcompress($Contents$level);
        
$Contents substr($Contents,  0,  strlen($Contents) - 4);
        print 
$Contents;
        print 
pack('V'$Crc);
        print 
pack('V'$Size);
        die();
    }
    else
    {
        
ob_end_flush();
        die();
    }

В конец скрипта ставим:
PHP код:
Gzip(true); 
 
Ответить с цитированием

  #2  
Старый 05.04.2008, 12:38
DIAgen
Познавший АНТИЧАТ
Регистрация: 02.05.2006
Сообщений: 1,191
С нами: 10539746

Репутация: 1276


По умолчанию

Где то я уже видел эту реализацию, даже припоминаю DLE cms
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сжатие pdf cybercoder Болталка 5 13.03.2008 16:30
Сжатие прог echobyte С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby 7 10.03.2008 16:25



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.

×

Создать сделку

Продавец: ник или ID

Название сделки:

Сумма USDT:

Срок сделки, дней:

Кто платит комиссию:

Условия сделки:

После создания сделки средства будут зарезервированы в холде до завершения сделки.

×

Мои сделки

Загрузка...
×

Сделка


Загрузка чата...