繁体   English   中英

在PHP中创建受密码保护的ZIP文件

[英]Create password protected ZIP file in PHP

嗨,我正在使用以下代码创建受密码保护的zip文件

$password = 'pass';
$outfile = 'download.zip';    
$infile = 'xml.php';    
header("Content-type: application/octet-stream");   
header("Content-disposition: attachment; filename=$outfile");    
@system("zip -P $password $outfile $infile");    
readfile($outfile);    
@unlink($outfile);

但它不起作用。

相同的代码为我工作。 当我第一次运行此程序时,出现权限错误,当我将权限授予文件夹时,它起作用了。 您还可以检查文件夹权限。 它也可能为您工作。

假设您的示例很简单并且密码来自其他地方(也许是用户输入的密码),那么系统调用是不安全的! 如果它包含对shell有意义的字符,则会得到不希望的结果。 确保使用escapeshellarg进行转义参数: http ://php.net/manual/zh/function.escapeshellarg.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM