1
0
Fork 0
No description
Find a file
Daniel Baumann c655d7a3a5
Releasing fastforward version 3.0.0-2~ffwd13+u1.
Signed-off-by: Daniel Baumann <daniel@debian.org>
2026-02-13 06:23:34 +01:00
.github/workflows Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
debian Releasing fastforward version 3.0.0-2~ffwd13+u1. 2026-02-13 06:23:34 +01:00
libs Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
src Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
tests Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
.gitattributes Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
.gitignore Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
composer.json Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
LICENSE Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
phpunit.xml Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00
README.md Adding upstream version 3.0.0. 2026-02-13 06:23:14 +01:00

Matomo/Decompress

Component providing several adapters to decompress files.

PHPUnit

It supports the following compression formats:

  • Zip
  • Gzip
  • Bzip
  • Tar (gzip or bzip)

With the following adapters:

Installation

With Composer:

{
    "require": {
        "matomo/decompress": "^2.1"
    }
}

Usage

All adapters have the same API as they implement Matomo\Decompress\DecompressInterface:

// Extracting Gzip file
$extractor = new \Matomo\Decompress\Gzip('file.gz');

$extractedFiles = $extractor->extract('some/directory');

if ($extractedFiles === 0) {
    echo $extractor->errorInfo();
}

// Extracting Bzip file
$extractor = new \Matomo\Decompress\Bzip('file.bz');

$extractedFiles = $extractor->extract('some/directory');

if ($extractedFiles === 0) {
    echo $extractor->errorInfo();
}

// Extracting Zip file with ZipArchive
$extractor = new \Matomo\Decompress\ZipArchive('file.zip');

$extractedFiles = $extractor->extract('some/directory');

if ($extractedFiles === 0) {
    echo $extractor->errorInfo();
}

// Extracting Zip file with PclZip
$extractor = new \Matomo\Decompress\PclZip('file.zip');

$extractedFiles = $extractor->extract('some/directory');

if ($extractedFiles === 0) {
    echo $extractor->errorInfo();
}

// Extracting .tar.bz2 file
$extractor = new \Matomo\Decompress\Tar('file.tar.bz2', 'bz2');

$extractedFiles = $extractor->extract('some/directory');

if ($extractedFiles === 0) {
    echo $extractor->errorInfo();
}

// Extracting .tar.gz file
$extractor = new \Matomo\Decompress\Tar('file.tar.gz', 'gz');

$extractedFiles = $extractor->extract('some/directory');

if ($extractedFiles === 0) {
    echo $extractor->errorInfo();
}

License

The Decompress component is released under the LGPL v3.0.