Dozep
Профессор
- Регистрация
 - 5 Авг 2008
 
- Сообщения
 - 170
 
- Реакции
 - 37
 
- Автор темы
 - #1
 
Товарищи, как заархивировать содержимое папки papka на сервере в зип архив? причемв этой папке есть еще папки.
то что нашел в гугле
	
	
	
		
этот только файлы архивит, без подпапки.
	
	
	
		
этот в данном случае архивит весь каталог papka. у него много параметров, среди которых есть
	
	
	
		
правда я так и не разобрался с ним, не получилось, в архив test.zip ничего не записывается хотя возможно это и не то вовсе
упд. изучил Для просмотра ссылки Войдиили  Зарегистрируйся , поочереди добавил сначала файлы потом папки и все вышло. функции ZipArchive::addFile и ZipArchive::addEmptyDir
может кому пригодится)
	
		
			
		
		
	
				
			то что нашел в гугле
		PHP:
	
	// Создаем архив и добавляем в него все файлы из директории
$zip = new ZipArchive;
$res = $zip -> open('images.zip', ZipArchive::CREATE);
if ($res === TRUE) 
{
    $dir = opendir( "./images" );
    chdir( "./images" );
    while( $d = readdir( $dir ) )
    {
        if( is_file( $d ) )
        {
            echo "Добавляем в архив файл ".$d." размером ".filesize( $d )."<br />";
            $zip -> addFile( $d, $d);           
        }
    }
    $zip -> close();
    closedir( $dir ); 
    echo '<p >Файлы добавлены в архив</p>';
} 
else 
{
    echo '<p >Ошибка</p>';
}
?>
	
		PHP:
	
	include_once('pclzip.lib.php');
$archive = new PclZip('123.zip'); //указываем имя будущего архива
$v_list = $archive->create('papka',PCLZIP_OPT_REMOVE_PATH,'',PCLZIP_OPT_ADD_PATH, '');
if ($v_list == 0){die("Error : ".$archive->errorInfo(true));}
	
		PHP:
	
	PCLZIP_OPT_NO_COMPRESSION 
Позволяет добавить файл в архив не сжимая его.
     $archive = new PclZip('test.zip');
    $list = $archive->add("data/file.txt", PCLZIP_OPT_NO_COMPRESSION);
    if ($list == 0) {
      echo "ERROR : ".$archive->errorInfo(true);
    }
	
упд. изучил Для просмотра ссылки Войди
может кому пригодится)