PHP压缩函数
我试图用数组中的特定文件构建一个目录树,并将其推送到下载。这部分工作正常 问题是当我试图用内容填充特定文件时 下载完成后,文件为空 然而,switch case语句被执行,所有方法都在工作 我认为问题在于我的zip函数,但我真的不知道应该搜索什么(或者代码设计不是最好的)PHP压缩函数,php,zip,Php,Zip,我试图用数组中的特定文件构建一个目录树,并将其推送到下载。这部分工作正常 问题是当我试图用内容填充特定文件时 下载完成后,文件为空 然而,switch case语句被执行,所有方法都在工作 我认为问题在于我的zip函数,但我真的不知道应该搜索什么(或者代码设计不是最好的) 乍一看,我会更改以下几行 $zip = new ZipArchive(); foreach ($dirs as $dir){ $zip->open($file, ZIPARCHIVE::
乍一看,我会更改以下几行
$zip = new ZipArchive();
foreach ($dirs as $dir){
$zip->open($file, ZIPARCHIVE::CREATE);
$zip->addEmptyDir($dir);
到
由于每次添加目录时都要打开文件,因此我觉得这似乎是错误的
另一方面,我会设置一个组件名策略,并在构造函数中检查它,以防止输入攻击
我不知道,也许一个好的名称策略是-只允许在模块名称中使用字母字符、数字和破折号-乍一看,我会更改以下几行
$zip = new ZipArchive();
foreach ($dirs as $dir){
$zip->open($file, ZIPARCHIVE::CREATE);
$zip->addEmptyDir($dir);
到
由于每次添加目录时都要打开文件,因此我觉得这似乎是错误的
另一方面,我会设置一个组件名策略,并在构造函数中检查它,以防止输入攻击
我不知道,也许一个好的名称策略是-模块名称中只允许字母字符、数字和破折号-谢谢您的回复和评论!不幸的是,更改上述行似乎没有任何效果。感谢您的回复和评论!不幸的是,更改上面的行似乎没有任何效果。
$zip = new ZipArchive();
$zip->open($file, ZIPARCHIVE::CREATE);
foreach ($dirs as $dir){
$zip->addEmptyDir($dir);