array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'uk', ), 'this' => array ( 0 => 'ziparchive.addfile.php', 1 => 'ZipArchive::addFile', 2 => 'Adds a file to a ZIP archive from the given path', ), 'up' => array ( 0 => 'class.ziparchive.php', 1 => 'ZipArchive', ), 'prev' => array ( 0 => 'ziparchive.addemptydir.php', 1 => 'ZipArchive::addEmptyDir', ), 'next' => array ( 0 => 'ziparchive.addfromstring.php', 1 => 'ZipArchive::addFromString', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/zip/ziparchive/addfile.xml', ), 'history' => array ( ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); contributors($setup); ?>

ZipArchive::addFile

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

ZipArchive::addFileAdds a file to a ZIP archive from the given path

Опис

public ZipArchive::addFile(
    string $filepath,
    string $entryname = "",
    int $start = 0,
    int $length = ZipArchive::LENGTH_TO_END,
    int $flags = ZipArchive::FL_OVERWRITE
): bool

Adds a file to a ZIP archive from a given path.

Зауваження: Для найкращої сумісності рекомендується завжди використовувати косу риску (/) як роздільник тек в назвах ZIP-файлів.

Параметри

filepath

The path to the file to add.

entryname

If supplied and not empty, this is the local name inside the ZIP archive that will override the filepath.

start

For partial copy, start position.

length

For partial copy, length to be copied, if ZipArchive::LENGTH_TO_END (0) the file size is used, if ZipArchive::LENGTH_UNCHECKED the whole file is used (starting from start).

flags

Bitmask consisting of ZipArchive::FL_OVERWRITE, 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.

Значення, що повертаються

Повертає true у разі успіху або false в разі помилки.

Журнал змін

Версія Опис
8.0.0, PECL zip 1.18.0 flags was added.
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.

Приклади

This example opens a ZIP file archive test.zip and add the file /path/to/index.txt. as newname.txt.

Приклад #1 Open and add

<?php
$zip
= new ZipArchive;
if (
$zip->open('test.zip') === TRUE) {
$zip->addFile('/path/to/index.txt', 'newname.txt');
$zip->close();
echo
'ok';
} else {
echo
'failed';
}
?>

Примітки

Зауваження:

When a file is set to be added to the archive, PHP will lock the file. The lock is only released once the ZipArchive object has been closed, either via ZipArchive::close() or the ZipArchive object being destroyed. This may prevent you from being able to delete the file being added until after the lock has been released.

Прогляньте також