ZipArchive::replaceFile
(PHP >= 8.0.0, PECL zip >= 1.18.0)
Replace file in ZIP archive with a given path
Description
Replace file in ZIP archive with a given path.
Separator
Parameters
filepathThe path to the file to add.
indexThe index of the file to be replaced, its name is unchanged.
startFor partial copy, start position.
lengthFor partial copy, length to be copied, if
ZipArchive::LENGTH_TO_END(0) the file size is used, ifZipArchive::LENGTH_UNCHECKEDthe whole file is used (starting fromstart).flagsBitmask consisting of
ZipArchive::FL_ENC_GUESS,ZipArchive::FL_ENC_UTF_8,ZipArchive::FL_ENC_CP437,ZipArchive::FL_OPEN_FILE_NOW. The behaviour of these constants is described on the ZIP constants page.
Return Values
Success
Changelog
| Version | Description |
|---|---|
| 8.3.0, PECL zip 1.22.1 | ZipArchive::FL_OPEN_FILE_NOW was added. |
| 8.3.0, PECL zip 1.22.2 | ZipArchive::LENGTH_TO_END and ZipArchive::LENGTH_UNCHECKED were added. |
Examples
This example opens a ZIP file archive test.zip and replaces index 1 entry with /path/to/index.txt.
Open and replace
<?php
$zip = new ZipArchive;
if ($zip->open('test.zip') === TRUE) {
$zip->replaceFile('/path/to/index.txt', 1);
$zip->close();
echo 'ok';
} else {
echo 'failed';
}
?>See Also
ZipArchive::addFile