Comparing gzcompress/gzuncompress and bzcompress/bzdecompress, the bz combo is about 5x slower than gz.
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
bzcompress — Comprime una stringa nel formato bzip2
bzcompress() comprime la
stringa sorgente
e la restituisce come dati
codificati in bzip2.
Il parametro opzionale dimblocco
specifica
la dimensione del blocco usato durante la compressione e dovrebbe essere un numero tra
1 e 9 dove 9 dà la compressione migliore, ma usando più
risorse. dimblocco
ha come valore predefinito
4.
Il parametro opzionale workfactor
controlla
il comportamento della fase di compressione quando deve trattare col caso peggiore,
ovvero dati in ingresso molto ripetitivi. Il valore può variare tra 0 e
250, dove 0 è un caso speciale e 30 è il valore di
default. Indipendentemente dal parametro workfactor
, i
dat generati sono gli stessi.
Example #1 Esempio di bzcompress()
<?php
$str = "dati di prova";
$bzstr = bzcompress($str, 9);
echo $bzstr;
?>
See also bzdecompress().
Comparing gzcompress/gzuncompress and bzcompress/bzdecompress, the bz combo is about 5x slower than gz.
The blocksize parameter tells bzip to use 100 000 Byte * blocksize blocks to compress the string. In the example above we can see the output size and time needed of bz[2] to bz[9] are nearly the same, because there ware just 189 058 Byte of data to compress and in this case bz[2] to bz[9] means "compress all data et once".
So we may notice a bigger difference in speed and compression rate with bigger files.
the workfactor parameter sets, how fast bzip switches in the slower fallback algorithm, if the standard algorithm gets problems with much repetitive data. 0 means, bzip uses the default value of 30. This option is recommend.
For more information about the parameter look at http://www.bzip.org/1.0.3/html/low-level.html#bzcompress-init