本教程将教您如何在 PHP 中将文件压缩和解压缩(压缩和解压缩)到 zip 归档文件中。您还将学如何删除或重命名存档中的文件,而无需先提取它们。
在PHP中压缩一个文件
压缩目录中的多个文件
修改或覆盖档案
从档案中提取内容
获得对档案的更多控制权
在 PHP 中压缩单个文件
假设您有一个网站,允许用户下载不同字体的字体文件以及使用它们的许可信息。像这样的文件将是使用 PHP 自动归档的完美示例。以下代码向您展示了如何做到这一点。
压缩目录中的多个文件
像往常一样,我们首先创建一个ZipArchive
实例,然后使用该open()
方法创建我们的存档。每次调用方法之前,我们还为数组中的add_path
键指定不同的值。这样,我们可以一次处理一组特定的文件,并相应地提供归档选项。$options
addGlob()
在第一种情况下,
我们遍历lights目录中的所有.jpg文件,
并将它们放置在归档文件light_wallpapers目录中。
同样,
我们遍历文档目录中的所有.ttf文件,
然后将它们放入存档中,
名为font_files的文件夹中。
最后,
我们一次遍历文档中的所有.jpg和.png文件,
并将它们全部放在images目录中。
如您所见,
$options
参数中的值,
对于组织存档内的内容很有用。
修改或覆盖档案
从档案中提取内容
获得对档案的更多控制权
类似的功能renameName($oldname, $newname)
可用于更改存档中任何文件的名称。$newname
如果标题为的文件已存在,您将收到错误消息。
最后的想法
我们已经介绍了ZipArchive
该类的许多非常有用的方法,它们将使 PHP 中文件的自动压缩和提取变得轻而易举。您现在应该能够根据自己的标准一次压缩单个文件或一组文件。同样,您应该能够从存档中提取任何特定文件而不会影响其他内容。
在 和 的帮助下count()
,numFiles
您将获得对单个文件的更多控制权,重命名或删除它们将非常容易。您应该至少阅读一次文档以了解更多此类功能。
发表评论