ZipArchive::getFromName

(PHP 5 >= 5.2.0, PHP 7, PECL zip >= 1.1.0)

ZipArchive::getFromNameDevuelve el contenido de la entrada utilizando su nombre

Descripción

mixed ZipArchive::getFromName ( string $name [, int $length = 0 [, int $flags ]] )

Devuelve el contenido de la entrada utilizando su nombre

Parámetros

name

Nombre de la entrada

length

La longitud que se see desde la entrada. Si es 0, entonces toda la entrada se lee.

flags

Los indicadores a utilizar para abrir el archivo. Los siguientes valores podrían ser escritos juntos con un OR lógico en él.

  • ZIPARCHIVE::FL_UNCHANGED

  • ZIPARCHIVE::FL_COMPRESSED

Valores devueltos

Devuelve el contenido de la entrada en caso de tener éxito, o FALSE en caso de error.

Ejemplos

Ejemplo #1 Obtener el contenido de los ficheros

<?php
$zip 
= new ZipArchive;
if (
$zip->open('test1.zip') === TRUE) {
    echo 
$zip->getFromName('testfromfile.php');
    
$zip->close();
} else {
    echo 
'falló';
}
?>

Ejemplo #2 Convierte una imagen desde una entrada de fichero zip

<?php
$z 
= new ZipArchive();
if (
$z->open(dirname(__FILE__) . '/test_im.zip')) {
    
$im_string $z->getFromName("pear_item.gif");
    
$im imagecreatefromstring($im_string);
    
imagepng($im'b.png');
}
?>
add a note add a note

User Contributed Notes 1 note

up
0
henrik dot haftmann at gmail dot com
5 days ago
The handling of file names containing non-ASCII characters is undocumented. It seems that this function calls <?php mb_convert_encoding($name,"CP850","UTF-8") ?> and therefore expects DOS encoding in the zipfile but UTF-8 encoding for the name. If the zipfile uses UTF-8 names (Pkzip 4.5 / Winzip 11.2), this function fails. Use getFromIndex instead as a workaround.
To Top