PHPCon Poland 2024

gzencode

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

gzencodeGzipli bir dizge oluşturur

Açıklama

gzencode(string $veri, int $seviye = -1, int $kodlama = ZLIB_ENCODING_GZIP): string|false

Bu işlev veri dizgesinin gzip programının çıktısı ile uyumlu olarak sıkıştırılmış halini döndürür.

GZIP sıkıştırma algoritması hakkında daha ayrıntılı bilgi edinmek için "» GZIP Sıkıştırılmış Dosya Biçemi Belirtiminin 4.3 sürümü" (RFC 1952) belgesine bakınız.

Bağımsız Değişkenler

veri

Sıkıştırılacak veri.

seviye

Sıkıştırma seviyesi. Sıkıştırma olmayacağını belirtmek için 0, azami sıkıştırma için 9'a kadar değer belirtilebilir. Belirtilmezse, öntanımlı sıkıştırma seviyesi zlib kütüphanesinin öntanımlı sıkıştırma seviyesine eşit olacaktır.

kodlama

Kodlama kipi. FORCE_GZIP (öntanımlı) veya FORCE_DEFLATE olabilir.

FORCE_DEFLATE bir zlib başlığı, deflate biçemli veri ve bir Adler sağlama toplamından oluşan RFC 1950 uyumlu bir çıktı üretir.

Dönen Değerler

Bir hata oluşursa false aksi takdirde sıkıştırılmış dizgeyi döndürür.

Örnekler

Sonuçlanan dizge, standart bir .gz dosyasının içerebileceği uygun başlıkları ve veri yapısını içerir.

Örnek 1 - Bir gzip dosyası oluşturmak

<?php
$veri
= file_get_contents("bigfile.txt");
$sıkıveri = gzencode($veri, 9);
file_put_contents("bigfile.txt.gz", $sıkıveri);
?>

Ayrıca Bakınız

add a note

User Contributed Notes 1 note

up
12
Sam Dowling
12 years ago
this is a benchmark test of gzencode (.txt file)
----------------------------------------------
original file size = 3.29 MB (3,459,978 bytes)
compress lvl 1 = 1.09 MB (1,144,006 bytes)
compress lvl 2 = 1.06 MB (1,119,518 bytes)
compress lvl 3 = 1.03 MB (1,085,567 bytes)
compress lvl 4 = 953 KB (976,538 bytes)
compress lvl 5 = 909 KB (931,486 bytes)
compress lvl 6 = 910 KB (932,516 bytes)
compress lvl 7 = 910 KB (932,608 bytes)
compress lvl 8 = 910 KB (932,646 bytes)
compress lvl 9 = 910 KB (932,652 bytes)
----------------------------------------------
To Top