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.38 Webform Webformでテーブル形式にしたい
コンテンツの作成 7.38 node 代理投稿を可能にしたい
サイトの構築 7.38 deployment 冗長構成におけるアップロードおよび時間指定公開について
ユーザ 7.38 user form 新規ユーザー登録時、パスワード再設定時のパスワード入力抜けを防ぎたい
css 7.38 Webform Webfomの送信内容確認ページで表示が崩れる
コンテンツの作成 7.38 CKEditor CKEditorの「ソース」に入力したタグが消える
コンテンツの作成 7.38 node form ノード編集フォームをテーブル表示形式にしたい
サイトの構築 7.41 Rules Paygent モジュールについて
フォーム 7.43 Webform フォーム関数が実行されるタイミングについて
ユーザ 7.44 Quickbar 会員の種別(役割)別にメニューを設けたい
ユーザ 7.44 Password Policy 無効なユーザーを整理したい
Apache2.4 7.50 Apache2.4のアクセス制限
コンテンツの作成 7.50 Code per Node ページ毎にCSSやJSを設定したい
ユーザの管理 7.50 Paypal continued billing drupal7のPaypal継続課金モジュールについて
開発 mail 7.50 Mail Safety 開発/テスト用サイトのメール
CentOS 7.50 消せないファイルを消すには
コンテンツの管理 7.50 Administration menu 標準のユーザー管理ページ
コンテンツの作成 7.50 Inline Entity Form Drupal6のフィールドグループのようなモジュールはありませんか?
SSH 7.50 ProxyCommand SSH IP制限を1コマンドで通過する
コンテンツの作成 7.50 Expanding Textareas Textareaフォームの行サイズを自動調整するモジュール

ページ