Полезное

Архивация папки и файлов в ней в Zip .PHP

function ZipDirectory($src_dir, $zip, $dir_in_archive=""){
	$dirHandle = opendir($src_dir);
	while (false !== ($file = readdir($dirHandle))){
		if (($file != ".")&&($file != "..")){
			if (!is_dir($src_dir.$file)){
				$zip->addFile($src_dir.$file, $dir_in_archive.$file);
			}
			else {
				$zip->addEmptyDir($dir_in_archive.$file);
				$zip = $this->ZipDirectory($src_dir.$file.DIRECTORY_SEPARATOR,$zip,$dir_in_archive.$file.DIRECTORY_SEPARATOR);
			}
		}
	}
	return $zip;
}

function ZipFull($src_dir, $archive_path, $archive_comment=""){
	$zip = new ZipArchive();
	if ($zip->open($archive_path, ZIPARCHIVE::CREATE) !== true){
		return false;
	}
	$zip = $this->ZipDirectory($src_dir,$zip);
	$zip->setArchiveComment($archive_comment);
	$zip->close();
	return true;
}

Похожие