ホームページ バックエンド開発 PHPチュートリアル PHP ZipArchive圧縮関数の詳細な例_PHPチュートリアル

PHP ZipArchive圧縮関数の詳細な例_PHPチュートリアル

Jul 13, 2016 am 10:25 AM
zip

ZipArchive を使用してファイルを圧縮します。これは php5.2 以降でサポートされている拡張機能です。使用中にエラーが発生する場合は、php.ini の extension=php_zip.dll の前のセミコロンを確認してください。このクラス ライブラリを使用できるように、削除してから Apache を再起動しましたか?
例 1、zip 圧縮ファイルを生成します

コードをコピーします コードは次のとおりです:

/* zip 圧縮ファイルを生成*/
function create_zip($files = array(), $destination = ' ',$overwrite = false) {
//zip ファイルが既に存在し、上書きが false の場合、false を返します
if(file_exists($destination) && !$overwrite) { return false; }
//vars
$valid_files = array();
//ファイルが渡された場合...
if(is_array($files)) {
//各ファイルを循環する
foreach($files as $file) {
//makeファイルが存在することを確認してください
If(count($valid_files)) {
// アーカイブを作成します
$zip = new ZipArchive(); if($zip- >open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE ::CREATE) !== true) { $zip
// ファイルを追加します
Foreach ($ value_file s as $File) {
$ file_info_arr = PATHINFO ($ file) ']; // 階層ディレクトリを削除します ...
$ zip-> close(); pdf',
ROOTPATH.DIRECTORY_SEPARATOR.'TurboListerZeroTemplate.csv'
);
// true の場合は正常、false の場合は zip の作成に失敗しました
$filename='my-archive.zip'
$result = create_zip ,$filename);


例 2、フォルダーの下にあるすべてのファイルを圧縮します



コードをコピーします

コードは次のとおりです:

/*
php zip压缩文件夹下のすべての文件
*/
class HZip
{
/**
* ファイルとサブディレクトリを zip ファイルに追加します
* @param string $folder
* @param ZipArchive $zipFile
* @param int $exclusiveLength ファイル パスから除外されるテキストの数
*/
private static functionfolderToZip($folder, &$zipFile, $ exclusiveLength) {
$handle = opendir($folder);
while (false !== $f = readdir($handle)) {
if ($f != '.' && $f != '..') {
$filePath = "$folder/$f";
// zip に追加する前にファイル パスからプレフィックスを削除します。
$localPath = substr($filePath, $exclusiveLength);
if (is_file($filePath)) {
$zipFile->addFile($filePath, $localPath);
} elseif (is_dir($filePath)) {
// 追加子文件夹
$zipFile->addEmptyDir($localPath);
self::folderToZip($filePath, $zipFile, $exclusiveLength);
}
}
}
closeir($handle);
}

/**
* フォルダーを圧縮します (フォルダー自体を含めます)。
* 使用法:
* HZip::zipDir('/path/to/sourceDir', '/path/to/out.zip');
*
* @param string $sourcePath zip にするディレクトリのパス。
* @param string $outZipPath 出力 zip ファイルのパス。
  */
public static function zipDir($sourcePath, $outZipPath)
{
$pathInfo = pathInfo($sourcePath);
$parentPath = $pathInfo['dirname'];
$dirName = $pathInfo['basename'];
$sourcePath=$parentPath.'/'.$dirName;// 'folder' 文件夹产生バグを防ぐ
$z = new ZipArchive();
$z->open($outZipPath, ZIPARCHIVE::CREATE);//建立zip文件
$z->addEmptyDir($dirName);//建立文件夹
self::folderToZip($sourcePath, $z , strlen("$parentPath/"));
$z->close();
}
}

//メソッド
HZip::zipDir('yourlife', 'yourlife.zip'); を使用します。
?>

1.ZipArchive::addEmptyDir
新しいファイルの項目を追加します
2.ZipArchive::addFile
指定された zip 圧縮パッケージにファイルを追加します。
3.ZipArchive::addFromString
追加されたファイルと同時にコンテンツを追加します
4 .ZipArchive::close
关闭ziparchive
5.ZipArchive::extractTo
将压缩包解压
6.ZipArchive::open
打开一zip压缩包
7.ZipArchive::getStatusString
は压缩包解压
の内容を返します、错误を含む情報,压缩信息等等
8.ZipArchive::deleteIndex
删除压缩包内の特定の文書、例:deleteIndex(0)删除第一文件
9.ZipArchive::deleteName
删除压缩包内の特定の文書名前と同時にファイルも削除されます。

http://www.bkjia.com/PHPjc/825095.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/825095.html技術記事使用ZipArchive圧縮ファイル、これはphpの扩展类、自php5.2バージョン以降就自サポートこの扩展、如果你使用時候出现错误、查看下php.ini里面的拡張...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

HTML ファイルを ZIP に圧縮するためのベストガイド HTML ファイルを ZIP に圧縮するためのベストガイド Apr 09, 2024 pm 04:09 PM

HTML ファイルを ZIP に圧縮すると、ページの読み込み速度が向上します。方法には以下が含まれます: オンライン ツール (FileOptimizer、TinyPNG など) を使用する コマンド ライン ツール (gzip、7-zip など) を使用する Node.js スクリプトを使用する (zlib モジュールを使用する)

Linux圧縮zipコマンドの使い方 Linux圧縮zipコマンドの使い方 Oct 08, 2023 pm 01:25 PM

zip コマンドは、Linux システムで非常に便利な圧縮ツールです。 zip コマンドを使用すると、ファイルやディレクトリを zip ファイルに簡単に圧縮して、ストレージ容量を節約し、転送を容易にすることができます。 zipコマンドの基本構文は「zip [オプション] [圧縮ファイル名] [圧縮するファイルまたはディレクトリ]」です。

centos7でのファイル解凍コマンド(zip)の詳細説明 centos7でのファイル解凍コマンド(zip)の詳細説明 Jan 07, 2024 pm 06:30 PM

1. 圧縮フォルダーは zip ファイルです [root@cgls]#zip-rmydata.zipmydata2。mydata.zip を mydatabak ディレクトリに解凍します [root@cgls]#unzipmydata.zip-dmydatabak3.mydata01 フォルダーと mydata02.txt が圧縮されます。 mydata.zip[root@cgls]#zipmydata.zipmydata01mydata02.txt4. mydata.zip ファイルを直接解凍します [root@cgls]#unzipmydata.zip5. myd を表示します。

JavaでZip関数を使用してファイルを圧縮する方法 JavaでZip関数を使用してファイルを圧縮する方法 Jun 26, 2023 pm 02:10 PM

ファイルの圧縮は、ディスク容量とネットワーク送信時間を節約できる一般的な操作であり、Java にはファイル圧縮用の Zip 関数が用意されています。この記事では、Java で Zip 関数を使用してファイルを圧縮する方法を、詳細な紹介とデモ例を通して説明します。 1. Zip 関数の概要 Zip 関数は、Java で提供されている圧縮・パッケージ化ツールのライブラリで、ファイルやフォルダを Zip 形式のファイルに圧縮することができます。 ZipOutputStr は主に Zip 関数で使用されます

HTML ファイルの ZIP 圧縮の秘密を簡単にマスターする HTML ファイルの ZIP 圧縮の秘密を簡単にマスターする Apr 09, 2024 pm 05:36 PM

HTML ファイルの ZIP 圧縮は、Python の zipfile モジュールを通じて実現できます。 ZIP ファイル オブジェクトを作成します。 HTML ファイルを ZIP ファイルに追加します。 ZIP ファイル オブジェクトを閉じます。

7zとzipではどちらがロスレスですか? 7zとzipではどちらがロスレスですか? Jan 19, 2021 pm 06:37 PM

7z と zip はどちらも可逆圧縮です。 7z は、非常に高い圧縮率を備えた主流の効率的な圧縮形式であり、ZIP ファイル形式は、データ圧縮およびドキュメント保存用のファイル形式です。 7z の方が圧縮率が高く、次に zip が続きます。zip 形式の方が一般的で幅広いテクノロジがあり、Windows オペレーティング システムはデフォルトで zip 形式をサポートしています。

Java で zip アーカイブを解析し、ファイルの内容を取得する方法 Java で zip アーカイブを解析し、ファイルの内容を取得する方法 May 18, 2023 am 11:34 AM

機能説明ページはソース コードの圧縮パッケージをアップロードし、バックエンドは圧縮パッケージを解凍して各ファイルのコンテンツを取得します。関連ソースコード (1) まず、解凍したファイルに対応するエンティティクラスを定義します。 packagecom.sonar.data.vo;importlombok.Data;/***ファイル解析オブジェクト**@authorYuanqiang.Zhang*@since2022/7/12*/@DatapublicclassUnzipFileVo{/***タイプ: 0-フォルダー;1- ファイル*/privateIntegertype;/***ファイル パス (例: src/main/java/co)

PHPのzip_close()関数 PHPのzip_close()関数 Aug 28, 2023 pm 03:33 PM

zip_close() 関数は、zip ファイル アーカイブを閉じるために使用されます。 zip は zip_open() 関数によって開かれます。構文 zip_close(zip_file) パラメータ zip_file - ここでは、zip_open() で開かれた zip ファイルについて説明します。これは閉じたいファイルです。戻り値 zip_close() 関数は何も返しません。例<?php $zip_file=zip_open("new.zip"); zip_read($zip_file);&n

See all articles