ZipArchive::setEncryptionName

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

ZipArchive::setEncryptionNameEstablece el método de cifrado de una entrada definida por su nombre

Descripción

ZipArchive::setEncryptionName ( string $name , int $method [, string $password ] ) : bool

Establece el método de cifrado de una entrada definida por su nombre.

Parámetros

name

Nombre de la entrada.

method

El método de encriptación definido por una de las constantes ZipArchive::EM_constants.

password

Contraseña opcional, se utiliza por defecto cuando falta.

Valores devueltos

Devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplos

Este ejemplo crea un archivo ZIP test.zip y añade al archivo test.txt encriptado usando el método AES 256.

Ejemplo #1 Archivar y encriptar un archivo

<?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";
}
?>

Notas

Nota:

Esta función sólo está disponible si se construye con libzip ≥ 1.2.0.

Ver también

add a note add a note

User Contributed Notes 1 note

up
1
mauro dot chojrin at leewayweb dot com
1 month ago
Files compressed using this function on Linux won't be decompressed using Windows.

There seems to be some incompatibility with Windows built-in decompressor.

There's an alternative library that works better here: https://github.com/Ne-Lexa/php-zip

I got windows to open a file created with it by using the PKWARE encryption method
To Top