summaryrefslogtreecommitdiffstats
path: root/system/libraries/Zip.php
diff options
context:
space:
mode:
authorgarrettair <garrettair@gmail.com>2014-11-19 00:09:31 +0100
committergarrettair <garrettair@gmail.com>2014-11-19 00:09:31 +0100
commitf678e63bd823fa712e9fbb28c259fcbedc30aa45 (patch)
tree0153faed98392840efdcd22059dd31c6ad026f64 /system/libraries/Zip.php
parented3fc511e4e5aa7b171fd806e73401ace2497b32 (diff)
Exposed the arguments to gzcompress by adding public variables to the Zip library.
Diffstat (limited to 'system/libraries/Zip.php')
-rw-r--r--system/libraries/Zip.php15
1 files changed, 14 insertions, 1 deletions
diff --git a/system/libraries/Zip.php b/system/libraries/Zip.php
index 434229471..5208c9149 100644
--- a/system/libraries/Zip.php
+++ b/system/libraries/Zip.php
@@ -95,6 +95,19 @@ class CI_Zip {
* @var int
*/
public $now;
+
+ /**
+ * The level of compression. 0 to 9, 9 being the highest level of
+ * compression.
+ * @var int
+ */
+ public $compression_level = 6;
+
+ /**
+ * Which encoding to use. One of the ZLIB_ENCODING_* constants.
+ * @var int
+ */
+ public $compression_encoding = ZLIB_ENCODING_DEFLATE;
/**
* Initialize zip compression class
@@ -248,7 +261,7 @@ class CI_Zip {
$uncompressed_size = strlen($data);
$crc32 = crc32($data);
- $gzdata = substr(gzcompress($data), 2, -4);
+ $gzdata = substr(gzcompress($data, $this->compression_level, $this->compression_encoding), 2, -4);
$compressed_size = strlen($gzdata);
$this->zipdata .=