تهيه فايل zip از اطلاعات، بوسيله كلاس ZipArchive – PHP

در PHP ، ايجاد يك فايل Zip كار آسونيه، در ورژن های PHP 5.2 به بعد، ميتونيد از كلاس ZipArchive استفاده كنيد،‌و اگه از ورژن های قديمی تر استفاده ميكنيد، PECL zip روی سرورتون نصب كنيد و ازش استفاده كنيد.

برای اين كار از تابع زير استفاده كنيد:

function createZIP($files = array(),$output = '',$overwrite = false) {
//if the zip file already exists and overwrite is false, return false
if(file_exists($output) && !$overwrite) { return false; }
 
$zip = new ZipArchive();
if($zip->open($output,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) {
return false;
}
if(count($files))
{
//add the files to zip
foreach($files as $file) {
$zip->addFile($file,$file);
}
 
//close the zip
$zip->close();
 
//check to make sure the output zip file creaded and exists
return file_exists($output);
}
else
{
return false; //no files provided to create zip file
}
}

و بدين صورت از تابع فوق استفاده كنيد:

$files_to_zip = array(
 'file1.txt',
 'image.jpg',
 'file2.text',
 'dir/some.text'
 );
 //if true, good; if false, zip creation failed
 $result = createZIP($files_to_zip,'myArchive.zip');
تابع فوق در صورت پايان موفقيت آميز پاسخ true و در غير اينصورت پاسخ false رو برگشت خواهد داد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *