我正在创建一个PHP脚本,它将从一个位置创建一个zip文件,该位置将是通过$ _GET传递的变量。该位置将是一个文件夹,然后将被压缩,用户将被提示下载该文件夹,下载后该文件夹将需要自动删除。创建一个ZIP文件下载,然后将其删除
任何人都可以帮忙吗?
感谢
我正在创建一个PHP脚本,它将从一个位置创建一个zip文件,该位置将是通过$ _GET传递的变量。该位置将是一个文件夹,然后将被压缩,用户将被提示下载该文件夹,下载后该文件夹将需要自动删除。创建一个ZIP文件下载,然后将其删除
任何人都可以帮忙吗?
感谢
http://php.net/manual/en/ref.zip.php
你可以做这样的事情:
阅读新创建的zip文件并将其删除最后,像这样:
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
@unlink($file);
尽管问题措辞不佳,但这只是我寻找的解决方案,而且它的工作原理! +1 –
从$ _GET读取的位置和读取所有的文件下,并创建文件的数组。比创建一个zip和下载。
下面的链接将帮助您 http://www.tricksofit.com/2013/10/create-zip-file-php
你需要什么部分帮助?你试过去[PHP手册](http://php.net)的Zip/ZipArchive章节吗?一个StackOverflow问题应该是一个具体的编程问题,具体的答案,而不是你想写的程序的描述。 –
实际上,您应该可以在内存中构建zip文件,而不是先将其保存到磁盘,然后再次将其删除。虽然这取决于大小。 –
请参阅此类似的问题答案:http://stackoverflow.com/questions/5603851/how-to-create-a-zip-file-using-php-and-delete-it-after-user-downloads-it/17399319 #17399319 [此处输入链接的描述] [1] [1]:http://stackoverflow.com/questions/5603851/how-to-create-a-zip-file-using-php-and -delete-it-user-downloads-it/17399319#17399319 –