PHP圧縮ファイルはzip形式の関数コードです
リリース: 2016-07-25 08:59:22
-
- /* @圧縮zipファイルを作成 複数のファイルを一つのzipファイルに圧縮する関数
- * @$files array typeinstance array("1.jpg","2.jpg" );
- * @destination 対象ファイルのパスは「c:/androidyue.zip」などです
- * @$overwrite 対象ファイルと同じファイルを上書きするかどうか
- * @site http://bbs.it-home. org
- * /
- function create_zip($files = array(),$destination = '',$overwrite = false) {
- //zip ファイルが既に存在し、上書きが false の場合は false を返します
- //zip ファイルが存在する場合すでに存在し、上書きが false の場合は false を返します
- //zip ファイルが既に存在し、上書きが設定されている場合は書き換えない場合は 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->numFiles,' ステータスが ',$zip->status; のファイル
- //zip を閉じます
- //ファイルを閉じます
- $zip->close(); /ファイルが存在するかどうかを確認します
- //ファイルが存在するかどうかを確認します
- return file_exists($destination);
- }else{
- //実際に有効なファイルがない場合は false を返します
- return false;
- /****
- //テスト関数
- $files=array('temp.php','test.php');
- create_zip($files, 'myzipfile.zip', true);*/
- ?>
-
-
- コードをコピー
-
-
|
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31