zipファイル圧縮・解凍する方法

カテゴリ コンテンツの作成 コアバージョン 8.4x 関連モジュール archiver

圧縮

$zip_path = zipファイルへのパス;
$file_path = 圧縮したいファイルへのパス;
$file_name = zipファイル内での名前;

if ($zip = new \ZipArchive()) {
  if ($zip->open($zip_path, \ZipArchive::CREATE | \ZipArchive::OVERWRITE)) {
    if ($zip->addFile($file_path, $file_name)) {
      $zip->close();
    }
  }
}

解凍

$zip_path = zipファイルへのパス;
$base_name = zipファイル内での名前;
$image_manage = 解凍したファイルを入れるディレクトリ;

$zip = \Drupal::service('plugin.manager.archiver')
  ->getInstance(['filepath' => $zip_path]);

$zip->extract("$image_manage/", [$base_name]);

コメント

ページ

OTHER FAQ

Drupal開発・運用の疑問/質問の答えはここに

無料ユーザー登録すると質問できます。

カテゴリ昇順で並び替える Core Ver. 関連モジュール タイトル
フォーム 7.15 Webform WebformのEntity Translation
フォーム 7.15 DefaultTextForNode 新しいページの作成方法を一から教えてください
フォーム 7.43 Webform フォーム関数が実行されるタイミングについて
フォーム 8.7.x Webform WebformのCheckboxの要素にて表記の変更
フォーム 8.6.x JavaScript 特定のformにJavaScriptを紐付ける方法
フォーム 7.15 Webform Template Webformを複写したい
フォーム 7.15 Webform Webformで確認画面
パフォーマンス 7.34 Server お金をかけないで冗長化するには
ニュースレター 7.34 Simple news Simplenewsで追加顧客(リスト)だけにニュースレターを配信する方法
テーマ 8.4x hook_preprocess_html bodyタグにnode idやaliasのClassを追加する方法
テーマ 8.3x Theme drupal8 で パスに応じたページテンプレート名を利用する方法
テーマ 8.3x Core Twig開発用の設定
テーマ 7.23 hook ページや状況によってテーマを切り替える
テーマ 7.56 field レンダリング配列内に「ラベル非表示」を指定する方法
テーマ 8.3x Block Cache Theme 管理ページから作成したカスタムブロックを非キャッシュ化する方法
テーマ 7.15 CSS Injector 簡単にCSSを追加したい
テーマ 7.34 スマホ、PCおよびアプリを同時に運用可能なおすすめのテーマはありますでしょうか?
テーマ 8.7.x Bartikのtwigについて
テーマ 8.3x Contribute themes drupal8-寄贈テーマの動向
チューニング 7.26 PHP DrupalはNginxで動く?

ページ