有没有办法将JPG文件添加到ZIP压缩文件而不用重新压缩它们?听起来很奇怪,我知道。创建一个ZIP压缩文件而不压缩?
通过PHP创建ZIP文件使用大量的CPU。使用不带comprssion的ZIP仍然使用大量的CPU。如果我只想将图像(JPG)添加到档案中,为什么当JPG已经被压缩时它们会被重新压缩?
我知道,ZIP存档中的每个文件都需要使用与原始文件不同的格式(压缩),但也许有一种方法可以在每个文件前面设置一些标题(无需重新压缩)并复制那些一起到一个ZIP存档。
有没有办法将JPG文件添加到ZIP压缩文件而不用重新压缩它们?听起来很奇怪,我知道。创建一个ZIP压缩文件而不压缩?
通过PHP创建ZIP文件使用大量的CPU。使用不带comprssion的ZIP仍然使用大量的CPU。如果我只想将图像(JPG)添加到档案中,为什么当JPG已经被压缩时它们会被重新压缩?
我知道,ZIP存档中的每个文件都需要使用与原始文件不同的格式(压缩),但也许有一种方法可以在每个文件前面设置一些标题(无需重新压缩)并复制那些一起到一个ZIP存档。
既然你已经标记了这个php
,我假设你的问题适用于PHP zip扩展,在这种情况下,答案是:
没有没有。
PHP zip扩展does not currently allow you to set the compression method。 (该错误已经开放了好几年,截至2012年1月仍未解决)。
ZipArchive不允许这样做(据我所知,虽然扩展没有完整记录在php.net手册中)。
但是,PCLZip库在将文件添加到zip时允许使用PCLZIP_OPT_NO_COMPRESSION参数。
是否需要zip?因为[tarball](http://en.wikipedia.org/wiki/Tar_(file_format))对于没有压缩的归档是理想的... [PEAR]中有一个PHP实现(http://pear.php。 net/package/Archive_Tar) – DaveRandom 2012-03-01 12:38:56
JPEG图像被ZIP文件第二次压缩,但是它是一种不同类型的压缩,没有数据丢失。 另外,我同意@DaveRandom,tarballs在这里是个好主意。 – Andrea 2012-03-01 12:39:05
谢谢。我会检查一个tarball。 – Mike 2012-03-01 12:52:42