PHP ZipArchive は、ZIP ファイルを簡単に圧縮および解凍できる PHP に付属する拡張クラスです。使用する前に、まず PHP ZIP 拡張機能がオンになっていることを確認してください。
- /* 説明: 複数のファイルを一つのzipファイルに圧縮する関数
- * @param $files 配列型
- * @param 対象ファイルの保存先パス
- * @param $overwrite宛先ファイルと同じファイルを上書きします
- */
- function create_zip($files = array(),$destination = '',$overwrite = false){
- //zip ファイルが既に存在し、上書きしないように設定されている場合、 return false
- if(file_exists($destination) && !$overwrite) { return false; }
- $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($destination,$overwrite) ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE ) !== true) { return false; }
- //圧縮ファイルにファイルを追加します
- foreach($valid_files as $file) {
- $zip->addFile($file) ,$file);
- }
- // ファイルを閉じる
- $zip->close();
- return file_exists($destination);
- }else{
- return false; }
-
-
- $files = array('tg.php');
-
- create_zip($files,'tg.zip', true);
-
- ?>
-
-
- コードをコピー
|
ファイル圧縮、php、zip