WP_CLI\Extractor::extract_zip PHP Method

extract_zip() private static method

Extract a ZIP file to a specific destination.
private static extract_zip ( string $zipfile, string $dest )
$zipfile string
$dest string
    private static function extract_zip($zipfile, $dest)
    {
        if (!class_exists('ZipArchive')) {
            throw new Exception('Extracting a zip file requires ZipArchive.');
        }
        $zip = new ZipArchive();
        $res = $zip->open($zipfile);
        if (true === $res) {
            $tempdir = implode(DIRECTORY_SEPARATOR, array(dirname($zipfile), basename($zipfile, '.zip'), $zip->getNameIndex(0)));
            $zip->extractTo(dirname($tempdir));
            $zip->close();
            self::copy_overwrite_files($tempdir, $dest);
            self::rmdir(dirname($tempdir));
        } else {
            throw Exception($res);
        }
    }