如何在PHP中给ZIP文件设置密码保护?

4
我能够使用php中的ziparchive库创建zip文件。有没有办法为我创建的zip文件指定密码?是否有其他自定义库可以完成相同的任务?
我的php正在运行安全模式,而我的托管提供程序不允许我更改它。因此,我无法使用shell_exec()函数。是否有其他方法可以通过使用其他库来解决这个问题?我检查了DotNetZip库,但它只支持基于.net的语言,在Windows上没有与php相关的内容。此外,我正在使用Linux服务器。
应用程序是我有一些动态生成的xml文件需要压缩,我的客户将下载它。但我需要设置一个密码,这样即使有人截取了它,他们也无法打开它。
或者是否有其他替代方法?

使用PHP创建加密的zip归档文件 - https://dev59.com/VXRB5IYBdhLWcg3wXWO2 - Malitta N
我认为这可能会很棘手,因为压缩可能是在本地代码中执行的,而您似乎只能使用PHP代码,或者我在这里漏掉了什么? - Maarten Bodewes
2个回答

4
shell_exec('zip -qjP <password> <archive> <file1> <file2> ... <file_n>');

1
我的php正在运行安全模式,而我的托管提供商不允许我更改它。因此,我无法执行shell_exec()函数。是否有任何其他方法可以通过使用其他库来解决它?我检查了DotNetZip库,但它只支持.net语言,并且在Windows中没有与php相关的内容。另外,我正在使用Linux服务器。 - hablema
@hablema,请在您的评论中提供的信息更新您的问题。 - Maarten Bodewes

0

使用这个:

system('zip -P password zipfile.zip file.extension');

pass是密码,file.extension将被压缩成zipfile.zip。

适用于Windows和Linux。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接