2009-12-02 16 views

答えて

25

open bug report feature request on php.netによると、これは現時点では不可能です。

+8

取り消し線の場合 – Drew

+1

誰かがまだ見ているような場合でも、この機能はまだPHPコアのZipArchiveでは実装されていないようです(2012年中頃)。私は[system()](http://php.net/manual/en/function.system.php)と "zip -rn .jpg:.gif:.png images images"を使用する予定ですが、これはそうではないかもしれませんあらゆる状況に最適です。 – thirdender

+0

機能を追加したりバグを修正したりするのが本当に難しいのだろうかと思います。これは数日以内に一人の人間が行うことはできませんでしたか? –

7

前の記事で述べたように、あなたはZipで行うことはできません。 圧縮レベルを指定すると、アーカイブ方式よりも重要である場合には、PHPのzlibのは、それを可能にする:

string gzcompress (string $data [, int $level = -1 ]) 

$レベル - 圧縮のレベル。圧縮を行わない場合は0、圧縮を最大にする場合は9まで指定できます。

http://php.net/manual/en/book.zlib.php

2

確かにそれはそう、私はLinux用のzipコマンドで「実行」機能を使用していたevenin 2014ことはできません。

exec("cd \"".$the_directory_you want_to_zip."\" && zip -0 -r \"".$path_zip."\" ."); 
2

それが実装されているようだ/再配布に追加PHP 7のファイル:ZipArchive::setCompressionNameZipArchive::setCompressionIndex。未検証。

PS:アーカイブ全体ではなくファイルに対して個別に設定される理由は、ZIPアーカイブ内のファイルが実際にはZIPファイルであり、1つの「マスターZIPアーカイブ」にまとめて貼り付けられるためです。

関連する問題