Julio Montoya 321ce65f18 Updating vendors 11 éve
..
docs 321ce65f18 Updating vendors 11 éve
src 321ce65f18 Updating vendors 11 éve
tests 321ce65f18 Updating vendors 11 éve
.travis.yml 321ce65f18 Updating vendors 11 éve
CHANGELOG.md 321ce65f18 Updating vendors 11 éve
LICENSE 321ce65f18 Updating vendors 11 éve
README.md 321ce65f18 Updating vendors 11 éve
composer.json 321ce65f18 Updating vendors 11 éve
composer.lock 321ce65f18 Updating vendors 11 éve
phpunit-functional.xml.dist 321ce65f18 Updating vendors 11 éve
phpunit.xml.dist 321ce65f18 Updating vendors 11 éve

README.md

Zippy

A Object-Oriented PHP library to manipulate any archive format (de)compression through commandline utilities or PHP extension.

Build Status

Adapters

Zippy currently support

  • zip
  • PHP zip
  • GNU tar
  • BSD tar

Which bring support to file types

  • .tar
  • .zip
  • .tar.gz
  • .tar.bz2

API Example

Archive listing and extraction :

use Alchemy\Zippy\Zippy;

$zippy = Zippy::load();
$zippy->create('archive.zip');

$archive = $zippy->open('build.tar');

// extract content to `/tmp`
$archive->extract('/tmp');

// iterates through members
foreach ($archive as $member) {
    echo "archive contains $member \n";
}

Archive creation

use Alchemy\Zippy\Zippy;

$zippy = Zippy::load();
// creates an archive.zip that contains a directory "folder" that contains
// files contained in "/path/to/directory" recursively
$archive = $zippy->create('archive.zip', array(
    'folder' => '/path/to/directory'
), recursive = true);

Customize file and directory names inside archive

use Alchemy\Zippy\Zippy;

$zippy = Zippy::load();
$archive = $zippy->create('archive.zip', array(
    'folder' => '/path/to/directory',            // will create a folder at root
    'http://www.google.com/logo.jpg',            // will create a logo.jpg file at root
    fopen('https://www.facebook.com/index.php'), // will create an index.php at root
    'directory/image.jpg' => 'image.jpg',        // will create a image.jpg in 'directory' folder
));

##API Browser

Documentation

Documentation hosted at read the docs !

##License

This project is licensed under the MIT license.