(PHP 5 >= 5.2.0, PHP 7, PECL zip >= 1.1.0)
ZipArchive::addFile — Adds a file to a ZIP archive from the given path
$filename
[, string $entryname
= null
[, int $start
= 0
[, int $length
= 0
[, int $flags
= ZipArchive::FL_OVERWRITE
]]]] ) : boolAdds a file to a ZIP archive from a given path.
Nota: Para portabilidade máxima, é recomendado sempre utilizar barras normais (
/
) como separador de diretórios nos nomes de arquivos dentro de ZIPs.
filename
The path to the file to add.
entryname
If supplied, this is the local name inside the ZIP archive that will override the filename
.
start
For partial copy, start position.
length
For partial copy, length to be copied, if 0 or -1 the whole file (starting from start
) is used.
flags
Bitmask consisting of
ZipArchive::FL_OVERWRITE
,
ZipArchive::FL_ENC_GUESS
,
ZipArchive::FL_ENC_UTF_8
,
ZipArchive::FL_ENC_CP437
.
The behaviour of these constants is described on the
ZIP constants page.
Retorna true
em caso de sucesso ou false
em caso de falha.
Versão | Descrição |
---|---|
8.0.0 / 1.18.0 |
flags was added.
|
This example opens a ZIP file archive test.zip and add the file /path/to/index.txt. as newname.txt.
Exemplo #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';
}
?>
Nota:
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.