ZipArchive::replaceFile

(PHP >= 8.0.0, PECL zip >= 1.18.0)

ZipArchive::replaceFileЗаменяет файл в ZIP-архиве указанным путем

Описание

public ZipArchive::replaceFile ( string $filename , int $index , int $start = 0 , int $length = 0 , int $flags = 0 ) : bool

Заменяет файл в ZIP-архиве указанным путем.

Замечание: Для максимальной переносимости, рекомендуется всегда использовать прямые слеши (/) в качестве разделителя директорий в именах файлов.

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

filename

Путь к файлу для добавления.

index

Индекс файла, подлежащего замене, его имя не изменяется.

start

Для частичного копирования начальная позиция.

length

Для частичного копирования - длина, которую нужно скопировать, если 0 или -1, используется весь файл (начиная со start).

flags

Битовая маска, состоящая из ZipArchive::FL_ENC_GUESS, ZipArchive::FL_ENC_UTF_8, ZipArchive::FL_ENC_CP437. Поведение этих констант описано на странице Константы ZIP.

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

Возвращает true в случае успешного завершения или false в случае возникновения ошибки.

Примеры

В этом примере открывается ZIP-архив test.zip и заменяется запись с индексом 1 на /path/to/index.txt.

Пример #1 Открытие и замена

<?php
$zip 
= new ZipArchive;
if (
$zip->open('test.zip') === TRUE) {
    
$zip->replaceFile('/path/to/index.txt'1);
    
$zip->close();
    echo 
'Ок';
} else {
    echo 
'Ошибка';
}
?>

Смотрите также

  • ZipArchive::addFile() - Добавляет в ZIP-архив файл по указанному пути