ホームページ > バックエンド開発 > PHPチュートリアル > ファイルZip圧縮用のPHPコード

ファイルZip圧縮用のPHPコード

WBOY
リリース: 2016-07-25 09:03:11
オリジナル
968 人が閲覧しました
  1. /* 圧縮 zip ファイルを作成します */

  2. function create_zip($files = array(),$destination = '',$overwrite = false) {
  3. // zip ファイルがすでに存在し、上書きが false の場合、false を返します
  4. if(file_exists($destination) && !$overwrite) { return false; }
  5. //vars
  6. $valid_files = array();
  7. //ファイルが渡された場合...
  8. if(is_array($files)) {
  9. //各ファイルを循環
  10. foreach($files as $file) {
  11. //ファイルが存在することを確認してください
  12. if(file_exists($file)) {
  13. $valid_files[] = $file;
  14. }
  15. }
  16. }
  17. //適切なファイルがあれば...
  18. if(count( $valid_files)) {
  19. //アーカイブを作成します
  20. $zip = new ZipArchive();
  21. if($zip->open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true ) {
  22. return false;
  23. }
  24. //ファイルを追加します
  25. foreach($valid_files as $file) {
  26. $zip->addFile($file,$file);
  27. }
  28. //debug
  29. //echo ' zip アーカイブには、ステータスが ',$zip->numFiles' ファイルが含まれています。

  30. //zip を閉じます -- 完了!

  31. $zip ->close();

  32. //ファイルが存在することを確認します

  33. return file_exists($destination);
  34. }
  35. else
  36. {
  37. return false;
  38. }
  39. }
  40. / ***** 使用例 ***/
  41. $files=array('file1.jpg', 'file2.jpg', 'file3.gif');
  42. create_zip($files, 'myzipfile.zip', true);
  43. ?> ;

复制代


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート