English | 简体中文 | 繁體中文
查询

ZipArchive::setEncryptionName()函数—用法及示例

「 为 Zip 文件中的指定文件设置加密密码 」


函数名:ZipArchive::setEncryptionName()

适用版本:PHP 5 >= 5.6.0, PHP 7

用法:ZipArchive::setEncryptionName() 方法用于为 Zip 文件中的指定文件设置加密密码。该方法接受两个参数:文件名和密码。

语法:bool ZipArchive::setEncryptionName ( string $name , string $password )

参数:

  • name: 要设置密码的文件名。
  • password: 加密密码。

返回值:成功时返回 true,失败时返回 false。

示例:

$zip = new ZipArchive();
$zipFile = 'path/to/archive.zip';

// 打开 Zip 文件
if ($zip->open($zipFile, ZipArchive::CREATE) === true) {
    // 设置文件加密密码
    $fileName = 'file.txt';
    $password = 'mypassword';
    if ($zip->setEncryptionName($fileName, $password) === true) {
        echo "文件 $fileName 的加密密码设置成功。";
    } else {
        echo "文件加密密码设置失败。";
    }

    // 关闭 Zip 文件
    $zip->close();
} else {
    echo "无法打开 Zip 文件。";
}

注意事项:

  1. 该方法只能在打开的 Zip 文件中设置加密密码,如果文件不存在或者 Zip 文件未打开,则会返回 false。
  2. 加密密码是对单个文件进行加密,而不是整个 Zip 文件。
  3. 加密后的文件在解压缩时需要输入正确的密码才能解密。
  4. 该方法仅支持 PKWARE 加密算法,不支持其他加密算法。
  5. 设置加密密码后,需要调用 ZipArchive::close() 方法才能将更改保存到 Zip 文件中。
补充纠错
热门PHP函数
分享链接