PHP8 ZipArchive EM常量TRAD_PKWARE不工作



我使用了ZipArchive::EM_TRAD_PKWARE,带有密码,但zip文件未加密。我认为pkware不起作用。有解决方案吗?

Thx

$zip->setEncryptionName('test.txt', ZipArchive::EM_TRAD_PKWARE, 'PASSWORD'); 

我通过以下示例和规则使其工作:

让它发挥作用的两条规则

当我不遵守以下两条规则时,我得到了不一致的结果:

  1. 确保要加密的文件包含数据
  2. 确保在setEncryptionName之前调用addFile

工作示例

test.txt

创建以下test.txt文件,其中包含以下内容:

test

test.php

将以下PHP代码添加到test.PHP中:

$zip = new ZipArchive();
$zip->open("test.zip", ZipArchive::CREATE);
$zip->addFile("test.txt");
$zip->setEncryptionName('test.txt', ZipArchive::EM_TRAD_PKWARE, 'PASSWORD'); 
$zip->close();

运行test.php

php test.php

现在创建了一个zip文件,在解压缩时提示输入密码。

相关内容

  • 没有找到相关文章

最新更新