Я использую PHP ZipArchive для сжатия папок в PHP.
Файлы и подпапки хорошо добавлены в архив, но я хотел бы знать, как повысить уровень сжатия архив.
Следующий пример основан на примере этого коммита: https://github.com/php/php-src/commit/3a55ea02
$zip = new ZipArchive();
$filename = "output/a.zip";
if (!$zip->open($filename, ZIPARCHIVE::CREATE | ZipArchive::OVERWRITE)) {
exit("cannot open <$filename>\n");
}
$zip->addFromString("testfilephp.txt", "#1 This is a test string added as testfilephp.txt.\n");
$zip->addFile('output/done/monday/pdftest.pdf', 'test.pdf');
$zip->setCompressionName("test.pdf", ZipArchive::CM_DEFLATE, 6);
$zip->setCompressionIndex(2, ZipArchive::CM_DEFLATE, 6);
$zip->close();
Сжатие не достаточно.
- Вес архива: 7 690 288 байт
- Файл PDF "output / done / monday / pdftest.pdf" вес: 7 809 870 байт
Для этого примера я хотел бы, чтобы вес архива был менее 5 000 000 байт.
У кого-нибудь есть решение для определения реального уровня сжатия?
Заранее спасибо за вашу помощь и хорошей недели .
Микаэль