【问题标题】:List of compression formats that are supported by PHP? [closed]PHP 支持的压缩格式列表? [关闭]
【发布时间】:2016-09-12 19:00:04
【问题描述】:
我正在编写一个使用 PHP 解压缩档案的 Web 应用程序。
除了一般的archive formats,PHP官方支持的有哪些?
你能给我一个简短的介绍吗?
【问题讨论】:
标签:
php
zip
compression
archive
【解决方案1】:
如PHP's own documentation 中所述,有几个扩展可用:
-
Bzip2 - 以免费和无专利而闻名。 Bzip2 在压缩方面明显优于 Deflate (.gz),但不如 LZMA(通常为 .7z 和 .xz)。它还承诺在压缩和解压缩方面都比类似格式更快。
-
LZF - 旨在减少解压缩期间的内存使用量。它非常快,但压缩效果不是很好。总比不压缩好。
-
Phar - “PHP Archive”是 PHP 团队开发的一种格式,用于快速部署 PHP 应用程序。 Phar 可以将多个 php 文件归为一个,并且易于使用。
-
RAR - 闭源压缩和归档工具,非常常见并且在压缩方面也非常有效。由于许可,不直接支持创建 RAR 压缩文件,但这并非不可能。
-
ZIP - 可能是最知名的压缩格式。如需更多信息,请查看维基百科页面。
-
GZ - GZip 默认使用 Deflate 格式,在 PHP 中很容易使用。通常用于在提供基于文本的文件时节省带宽。
其中一些方法只能压缩单个文件。要解压多个文件的内容,您可能需要先 untar 它们。
请记住在您的网络服务器上启用相应的扩展。
还有其他几种格式可以与 php 结合使用,但它们要么不受官方扩展支持,要么您必须 execute shell commands to extract them。 (公平警告:一些网络托管服务提供商禁用此功能。)