ホームページ  >  記事  >  バックエンド開発  >  phpでファイルをzipファイルに圧縮する

phpでファイルをzipファイルに圧縮する

WBOY
WBOYオリジナル
2016-07-25 08:43:16780ブラウズ
ファイル圧縮、php、zip
PHP ZipArchive は、ZIP ファイルを簡単に圧縮および解凍できる PHP に付属する拡張クラスです。使用する前に、まず PHP ZIP 拡張機能がオンになっていることを確認してください。
  1. /* 説明: 複数のファイルを一つのzipファイルに圧縮する関数
  2. * @param $files 配列型
  3. * @param 対象ファイルの保存先パス
  4. * @param $overwrite宛先ファイルと同じファイルを上書きします
  5. */
  6. function create_zip($files = array(),$destination = '',$overwrite = false){
  7. //zip ファイルが既に存在し、上書きしないように設定されている場合、 return false
  8. if(file_exists($destination) && !$overwrite) { return false; }
  9. $valid_files = array();
  10. //実際の有効なファイル名を取得します
  11. if(is_array($files)) {
  12. foreach($ files as $file) {
  13. if(file_exists($file)) {
  14. $valid_files[] = $file;
  15. }
  16. }
  17. }
  18. //実際の有効なファイルがある場合
  19. if(count($) valid_files)) {
  20. $zip = new ZipArchive();
  21. //ファイルがすでに存在する場合は上書きし、存在しない場合は作成します。
  22. if($destination,$overwrite) ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE ) !== true) { return false; }
  23. //圧縮ファイルにファイルを追加します
  24. foreach($valid_files as $file) {
  25. $zip->addFile($file) ,$file);
  26. }
  27. // ファイルを閉じる
  28. $zip->close();
  29. return file_exists($destination);
  30. }else{
  31. return false; }
  32. $files = array('tg.php');
  33. create_zip($files,'tg.zip', true);
  34. ?>
  35. コードをコピー

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。