我正在创建某种文件共享应用程序。在这个应用程序中,你应该能够up-&下载文件并构造这些文件。
我选择不继续操作文件系统。但是我根据时间戳将文件上传到文件夹中,并将重要信息存储在数据库中并在数据库中构建它们。所以没有REAL子文件夹,只是数据库中的关系将文件结构化为文件夹。
不,我想让用户通过压缩来下载文件夹(包括子文件夹)。但是我想在将要下载的zip-archive中重新创建这个文件夹结构(用户在前端看到)。我已经设法使用ZipArchive类PHP:http://php.net/manual/en/class.ziparchive.php 但这有一个大问题。它使用了大量的内存和压缩大文件时的cpu。并且系统必须能够处理大文件(> 1GB)我不可能允许PHP使用> 1GB的内存?!
现在我发现了一个Stackoverflow问题,可以在php中使用更少的内存来压缩大文件: https://stackoverflow.com/a/4357904/383731
这似乎使用了Unix Zip命令,但是有可能在这些拉链中创建文件夹而文件系统中没有它们吗?
答案 0 :(得分:1)
关于链接的部分很重要。如果您只是使用链接,则实际上不必复制文件内容。您所做的只是为zip工具提供一个提示,它可以找到您要包含在存档中的内容
修改
符号链接和硬链接都有效,上面的链接解释了如何使用符号链接。