欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP打包下载多文件

程序员文章站 2022-05-06 13:06:01
...

PHP5.2+内置支持多文件打包,使用ZipArchive类。 要实现多文件打包下载,分两步,第一步是使用ZipArchive压缩多个文件,然后使用header指令生成下载操作。 第1步为了递归添加目录下所有子目录和文件,需要派生一个类,参考: 1.http://php.net/manual/en/cla

PHP5.2+内置支持多文件打包,使用ZipArchive类。

要实现多文件打包下载,分两步,第一步是使用ZipArchive压缩多个文件,然后使用header指令生成下载操作。

第1步为了递归添加目录下所有子目录和文件,需要派生一个类,参考:

1. http://php.net/manual/en/class.ziparchive.php#110719

第2步结合readfile来读取并输出文件到用户端,参考:

2. http://php.net/manual/zh/function.readfile.php#refsect1-function.readfile-examples

如果出现下载的zip文件非法,那么可能是在stream这个文件时,没有执行ob_clean(),导致前期输出缓冲被意外添加到文件中。


by iefreer