CakeFest 2024: The Official CakePHP Conference

bzcompress

(No version information available, might only be in Git)

bzcompressComprime una cadena en datos codificados en bzip2

Descripción

bzcompress(string $source, int $blocksize = 4, int $workfactor = 0): mixed

bzcompress() comprime la cadena dada y la devuelve como datos codificados con bzip2.

Parámetros

source

La cadena a comprimir.

blocksize

Especifica el blocksize usado durante la compresión y debería ser un número entre 1 y 9 siendo 9 la máxima compresión, pero también utiliza más recursos.

workfactor

Controla como se comportan las fases de compresión cuando se presenta en el peor de los casos, datos que se repiten continuamente. El valor puede estar entre 0 y 250 siendo 0 un caso especial.

Independientemente de workfactor, el valor generado de salida es el mismo.

Valores devueltos

La cadena comprimida, o el número de error en caso de error.

Ejemplos

Ejemplo #1 Comprimiendo datos

<?php
$str
= "sample data";
$bzstr = bzcompress($str, 9);
echo
$bzstr;
?>

Ver también

add a note

User Contributed Notes 2 notes

up
7
uprz23 at gmail dot com
13 years ago
Comparing gzcompress/gzuncompress and bzcompress/bzdecompress, the bz combo is about 5x slower than gz.
up
4
diego a messenger do dsemmler do de
14 years ago
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
To Top