ZipArchive::getFromName

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

ZipArchive::getFromNameВозвращает содержимое элемента по его имени

Описание

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

Возвращает содержимое элемента по его имени.

Список параметров

name

Имя элемента.

length

Размер читаемых данных из элемента. Если 0, содержимое читается полностью.

flags

Флаги используемые для открытия архива. Может быть установлено только одно нижеприведенное значение.

  • ZIPARCHIVE::FL_UNCHANGED

  • ZIPARCHIVE::FL_COMPRESSED

Возвращаемые значения

Возвращает содержимое элемента при успехе или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Получить содержимое файла

<?php
$zip 
= new ZipArchive;
if (
$zip->open('test1.zip') === TRUE) {
    echo 
$zip->getFromName('testfromfile.php');
    
$zip->close();
} else {
    echo 
'ошибка';
}
?>

Пример #2 Преобразовать изображении из 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');
}
?>

Коментарии

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.
2016-09-22 14:02:03
http://php5.kiev.ua/manual/ru/ziparchive.getfromname.html
When passing to the method explicit string which contains a relative path (inside the ZIP archive), e.g. 'path/to/file.php/' please make sure you used single quotation mark (') not the double one ("). Double quotation mark produce FALSE (at least at Windows machine) giving no further hints what gone wrong.
Also, please make sure that the path delimiters used inside your ZIP file is backslash or forward slash since it's make a difference in this place too.
I hope I saved you a headache while working with this (so far) unmentioned "feature" :)
2020-01-26 22:33:29
http://php5.kiev.ua/manual/ru/ziparchive.getfromname.html

    Поддержать сайт на родительском проекте КГБ