复制代码 代码如下:
/* 圧縮 zip ファイルを作成します */
function create_zip($files = array(),$destination = '',$overwrite = false) {
//if zip ファイルはすでに存在しており、上書きは false です。 false を返します
if(file_exists($destination) && !$overwrite) { return false;
//vars
$valid_files = array();
//ファイルが渡された場合...
if(is_array($files)) {
//各ファイルを循環する
foreach($files as $file) {
//ファイルが存在することを確認する
if(file_exists) ($file)) {
$valid_files[] = $file;
}
}
}
//適切なファイルがあれば...
if(count($valid_files)) {
//アーカイブを作成します
$zip = new ZipArchive();
if($zip->open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) {
return false;
}
//ファイルを追加します
foreach($valid_files as $file) {
$zip->addFile($file,$file);
}
//debug
//echo 'zip アーカイブには、ステータス ',$zip->status; のファイル ',$zip->numFiles' が含まれています。
//ジッパーを閉じます -- 完了です!
$zip->close();
//ファイルが存在することを確認します
return file_exists($destination);
}
else
{
return false;
}
}
/***** 使用例 ***/
$files=array('file1.jpg', 'file2.jpg', 'file3.gif');
create_zip($files, 'myzipfile.zip', true);
以上、zaixianshipin を介した PHP Zippressing のオンラインでファイルを圧縮する関数で、zaixianshipin に関する内容が含まれており、PHP 教則に関心のある友人の助けになることが望ましいです。