zlib://

bzip2://

zip://

zlib:// -- bzip2:// -- zip://Flujos de compresión

Descripción

compress.zlib:// y compress.bzip2://

zlib: funciona como gzopen(), excepto que el flujo puede ser utilizado directamente con fread() y otras funciones del sistema de archivos. Esta notación está obsoleta debido a ambigüedades con nombres de archivos que contienen dos puntos ':'. Utilice en su lugar compress.zlib://.

compress.zlib:// y compress.bzip2:// son equivalentes respectivamente a gzopen() y bzopen(), y funcionan incluso en sistemas que no soportan fopencookie.

La extensión ZIP proporciona el envoltorio zip:. A partir de PHP 7.2.0 y libzip 1.2.0+, se ha añadido el soporte para contraseñas en archivos cifrados, permitiendo que las contraseñas sean proporcionadas por contextos de flujo. Las contraseñas pueden ser definidas en un flujo utilizando la opción de contexto 'password'.

Uso

  • compress.zlib://file.gz
  • compress.bzip2://file.bz2
  • zip://archive.zip#dir/file.txt

Opciones

Resumen de envolturas
Atributo Soportado
Limitado por allow_url_fopen No
Permite la lectura
Permite la escritura Sí (excepto zip://)
Permite la adición Sí (excepto zip://)
Permite la lectura y escritura simultáneamente No
Soporte de la función stat() No, utilice el gestor file:// para obtener información sobre archivos comprimidos.
Soporte de la función unlink() No, utilice el gestor file:// para obtener información sobre archivos comprimidos.
Soporte de la función rename() No
Soporte de la función mkdir() No
Soporte de la función rmdir() No

add a note

User Contributed Notes 2 notes

up
20
lewa::cpan.org
8 years ago
One-liners to gzip and ungzip a file:

copy('file.txt', 'compress.zlib://' . 'file.txt.gz');

copy('compress.zlib://' . 'file.txt.gz', 'file.txt');
up
11
alvaro at demogracia dot com
14 years ago
Example on how to read an entry from a ZIP archive (file "bar.txt" inside "./foo.zip"):

<?php

$fp
= fopen('zip://./foo.zip#bar.txt', 'r');
if(
$fp ){
while( !
feof($fp) ){
echo
fread($fp, 8192);
}
fclose($fp);
}

?>

Also, apparently, the "zip:" wrapper does not allow writing as of PHP/5.3.6. You can read http://php.net/ziparchive-getstream for further reference since the underlying code is probably the same.
To Top