0

我将解压缩的文件移动到服务器目录 /zip/file.unzipped.png

现在我需要拿那个文件并压缩它。

是否有可能这样做或需要 zip 存档作为 codeigniter 指南所说的?

我怎样才能做到这一点?

4

3 回答 3

1

您正在寻找的只是直接下载,而不是在下载之前将存档保存在磁盘上吗?

如果是这种情况,您可以执行@zer02 建议的操作,但删除存档步骤。

$name = 'mydata1.txt';

$data = '一个数据字符串!';

$this->zip->add_data($name, $data);

// 将 zip 文件写入服务器上的文件夹。将其命名为“my_backup.zip”

$this->zip->archive('/path/to/directory/my_backup.zip');

// 将文件下载到您的桌面。将其命名为“my_backup.zip”

$this->zip->download('my_backup.zip');

zip 库应该收集您添加到内存中 zip 缓存的所有数据,并创建一个文件以动态下载。

于 2013-04-04T19:29:44.333 回答
0

请阅读用户手册:http ://codeigniter.com/user_guide/libraries/zip.html

对于您的用例,有两个功能可以让我跳出来:

$this->zip->read_file()

允许您压缩服务器某处已存在的文件。提供一个文件路径,zip 类将读取它并将其添加到存档中:

$this->zip->read_dir()

允许您压缩已存在于服务器某处的文件夹(及其内容)。提供目录的文件路径,zip 类将递归读取它并将其重新创建为 Zip 存档。提供的路径中包含的所有文件都将被编码,其中包含的任何子文件夹也将被编码。

于 2012-10-20T19:46:22.913 回答
-1
$name = 'mydata1.txt';

$data = 'A Data String!';

$this->zip->add_data($name, $data);

// 将 zip 文件写入服务器上的文件夹。将其命名为“my_backup.zip”

$this->zip->archive('/path/to/directory/my_backup.zip'); 

// 将文件下载到您的桌面。将其命名为“my_backup.zip”

$this->zip->download('my_backup.zip');

Zip Lib CI

于 2012-10-20T16:01:53.907 回答