PHP での zip の生成は実際には非常に簡単で、次の 2 つの手順で完了できます。
1. まず用意したzip.phpツールクラスをダウンロードし、ダウンロード後解凍し、中のファイルを仮想ディレクトリ配下のincludeフォルダーに置きます。
2. 次のコードを php ファイルに追加します
require_once "./include/zip.php";
$zip = new PHPZip("required 圧縮フォルダー ディレクトリaddress", "圧縮ファイル名.zip"); //生成のみで自動ダウンロードはしません
$zip -> downloadZip("圧縮対象フォルダのアドレス", "圧縮ファイル名.zip"); //自動ダウンロード
例: 以下の疑似コードを参照して、特定の使用シナリオを確認できます:
クリップボードにコピー引用コンテンツ:
[www.bkjia.com]
require_once "./include/zip.php"; if (!$download) {
}
set_time_limit(60); // クラスがあると仮定します。次の操作を完了するには
$tempfolder = array();
$tempfile = array();
//ページ上のチェックボックスを選択して選択したフォルダーまたはファイルをダウンロードし、それをまとめてパッケージ化するとします
for( $i = 0;$i < $checkboxnum;$i++) {
$value = ${"select".$i};
if ($value != '') {
$this_type = substr($value, 0, 1 );
$this_id = substr($value, 1);
//フォルダーとファイルを個別に処理します
if ($this_type == 'd') {
$tempfolder[] = $this_id
}
elseif($this_type) == 'f') {
$tempfile[] = $this_id;
}
}
}
@mkdir($tempdir) = "$tempdir/".$ userid;別の一時フォルダーに
if (file_exists($curtempdir)) {
$tmpManager->DeleteDir($curtempdir); //古いフォルダーを削除します
}
if ( sizeof($tempfolder) > 0 || sizeof( $tempfile) > 0) {
mkdir($curtempdir, 0777); //パッケージ化するファイルやフォルダーがある場合は、フォルダーを再作成します
}
if (sizeof($tempfile) > 0) {
$ tmpManager->CopyFile($tempfile,$curtempdir); //作成したフォルダーにダウンロードするファイルをコピーします
}
if (sizeof($tempfolder) > ; 0) {
$tmpManager->CopyFolder($) tempfolder,$curtempdir); // 作成したフォルダーにダウンロードするフォルダーをコピーします
$zip = new PHPZip() -> downloadZip($curtempdir, "file_".date('Ymd') ).".zip"); //パッケージ化してダウンロード
転載元: http://www.cnblogs.com/xiaosuo/
http://www.bkjia.com/PHPjc/364396.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/364396.html
技術記事 PHP での zip の生成は実際には非常に簡単で、次の 2 つの手順で完了できます。 1.最初に用意したzip.phpツールクラスをダウンロードし、ダウンロード後解凍し、中のファイルを対応するディレクトリに置いてください...。