php8.5
Home/ Manual/ zip / ziparchive/ ZipArchive::setEncryptionName

ZipArchive::setEncryptionName

PHP function Edit on GitHub ✎

(PHP >= 7.2.0, PHP 8, PECL zip >= 1.14.0)

Set the encryption method of an entry defined by its name

Description

ZipArchive::setEncryptionName(string $name, int $method, string|null $password = null): bool

Set the encryption method of an entry defined by its name.

Parameters

name

Name of the entry.

method

The encryption method defined by one of the ZipArchive::EM_ constants.

password

Optional password, default used when missing.

Return Values

Success

Changelog

VersionDescription
8.0.0password is now nullable.

Examples

This example creates a ZIP file archive test.zip and add the file test.txt encrypted using the AES 256 method.

Archive and encrypt a file

php
<?php
$zip = new ZipArchive();
if ($zip->open('test.zip', ZipArchive::CREATE) === TRUE) {
    $zip->setPassword('secret');
    $zip->addFile('text.txt');
    $zip->setEncryptionName('text.txt', ZipArchive::EM_AES_256);
    $zip->close();
    echo "Ok\n";
} else {
    echo "KO\n";
}
?>

Notes

Note

This function is only available if built against libzip ≥ 1.2.0.

See Also

  • ZipArchive::setPassword
  • ZipArchive::setEncryptionIndex

Source: reference/zip/ziparchive/setencryptionname.xml · from the official PHP manual (php/doc-en)