2009-12-02 20 views

उत्तर

25

open bug report feature request on php.net के अनुसार यह वर्तमान में संभव नहीं है।

+8

स्ट्राइकथ्रू – Drew

+1

के लिए +1 बस अगर कोई अभी भी देख रहा है, तो यह कार्यक्षमता अभी तक PHP कोर के ज़िप आर्चिव (2012 के मध्य तक) में लागू नहीं होती है। मैं [system()] (http://php.net/manual/en/function.system.php) और "zip -rn .jpg: .gif: .png छवियों छवियों" का उपयोग करने की योजना बना रहा हूं, लेकिन यह नहीं हो सकता है सभी स्थितियों के लिए आदर्श। – thirdender

+0

मुझे आश्चर्य है कि क्या वास्तव में सुविधा जोड़ने और/या बग को ठीक करना मुश्किल है। क्या यह कुछ दिनों के भीतर एक व्यक्ति द्वारा नहीं किया जा सकता है? –

7

जैसा कि पिछले पोस्ट में बताया गया है, आप इसे ज़िप के साथ नहीं कर सकते हैं। तो एक संपीड़न स्तर निर्दिष्ट संग्रह विधि से ज्यादा महत्वपूर्ण है, तो पीएचपी zlib यह अनुमति देता है:

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

$ स्तर - संपीड़न का स्तर। अधिकतम संपीड़न के लिए 9 तक कोई संपीड़न के लिए 0 के रूप में दिया जा सकता है।

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

2

वास्तव में यह है नहीं संभव शाम 2014 So मैं Linux के लिए ज़िप कमांड के साथ "कार्यकारी" समारोह का उपयोग करने के लिए किया था:

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

ऐसा लगता है लागू किया गया है करने के लिए/पुनर्वितरण को जोड़ा गया PHP 7: ZipArchive::setCompressionName और ZipArchive::setCompressionIndex में फ़ाइलें। टेस्ट नहीं हुआ।

पीएस: कारण यह फाइलों के लिए व्यक्तिगत रूप से सेट किया गया है और पूरा संग्रह नहीं है क्योंकि ज़िप संग्रह के अंदर फाइलें वास्तव में स्वयं ज़िप फ़ाइलें हैं और एक "मास्टर ज़िप संग्रह" के साथ एक साथ "चिपके हुए" हैं।

संबंधित मुद्दे