Hướng dẫn dùng php unzipper trong PHP

zip là một định dạng nén phổ biến, được sử dụng để làm giảm dung lượng các định dạng file, để có thể dễ dàng gửi chúng đi nơi khác. PHP sử dụng class ZipArchive để hỗ trợ nén một hoặc nhiều file tới một file zip.
ZipArchive là class built-in của PHP nên bạn có thể dễ dàng gọi chúng mà không phải thực hiện bất cứ một cài đặt gì.

Show

Zip 1 file

open('output/data.zip', ZipArchive::CREATE || ZipArchive::OVERWRITE)) {
    // Add files
    if (!$zipArchive->addFile('data/test-1.txt', 'test-1.txt')) {
        printf("zip file error");
        exit;
    }
} else {
    printf('Open file error');
    exit;
}

// Close ZipArchive
$zipArchive->close();

Kết quả:

Hướng dẫn dùng php unzipper trong PHP

Zip 1 folder

open('output/data.zip', ZipArchive::CREATE || ZipArchive::OVERWRITE)) {

    // Add folder
    $dir = opendir('data/');
    while($file = readdir($dir)) {
        if(is_file("data/${file}")) {
            if (!$zipArchive->addFile("data/${file}", $file)) {
                printf("zip file error");
                exit;
            }
        }
    }

} else {
    printf('Open file error');
    exit;
}

// Close ZipArchive
$zipArchive->close();

Kết quả:

Unzip file

open('output/data.zip')) {
    // Extracts to current directory
    $zipArchive->extractTo('./');
} else {
    printf('Open file error');
    exit;
}

// Close ZipArchive
$zipArchive->close();

Nguồn: vinasupport.com