ホームページ  >  記事  >  バックエンド開発  >  PHP ジップ

PHP ジップ

王林
王林オリジナル
2024-08-29 12:59:541166ブラウズ

PHP Zip は PHP のデフォルトの方法の 1 つで、上記の形式に基づいた .zip、.tar、.rar などの形式を使用してファイルをアーカイブまたは圧縮するために使用されます。データは次の形式で圧縮されます。単一形式のフォルダー。これは、多数のデータが同じストレージ領域で結合され、同じストレージ領域で共有される場合に便利なアプローチであり、オペレーティング システムによっては、アーカイブ ファイル拡張子がサポートされています。 T. これらの関数は、対応するライブラリに従ってサポートされます。拡張機能がプラグインに必要な zip メソッドまたはその他のデフォルト メソッドに注意してください。対照的に、PHP コードではこれを使用します。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

構文

PHP コードの各メソッドには異なる使用法があり、機能は要件に応じて異なる場合があります。同様に、zip は PHP の組み込みメソッドの 1 つです。圧縮対象の 1 つ以上のファイルが含まれています。

<?php
$zip=new ZipArchive;
----some php code logics----
$zip -> close();
?>

上記のコードは zip メソッドを使用するための基本的な構文であり、ZipArchive は zip メソッドのインスタンスを作成するためのデフォルト クラスです。 ZipArchive クラスのメソッドを使用すると、zip メソッドと連携して実行されます。

PHP で Zip メソッドはどのように機能しますか?

zip は、他の形式のファイルと一緒に保持できるファイルを圧縮するためのアーカイブ方法であり、データは抽出オプションを使用して暗号化されます。データはマシン内の同じ場所またはカスタマイズされたパスに抽出されます。これは、大量のファイルを結合し、データの保存と取得を維持するために使用できる便利な方法の 1 つです。 PHP zip ファイル関数を使用すると、スクリプトが zip ファイルを操作できるようになります。これらの機能を使用します。対応するライブラリが PHP スクリプトにインポートされます。 PHP zip 拡張機能を使用すると、pho バージョン 5 以降がサポートされます。 PHP スクリプトを実行する前に、一部のデフォルトの PHP dll および ini ファイルを php インストールで有効にする必要があります。

zip メソッドは ziparchive クラスから取得されます。呼び出しには、圧縮を実現し、zip フォルダーを抽出するためのデフォルトのメソッドが含まれています。 zip_close() は PHP で zip ファイルを閉じるために使用され、 zip_entry_close () は特定のエントリ内の PHP zip ファイルを閉じるために使用されます。 zip_entry_compressedsize() を使用すると、すでに圧縮されているフォルダーの PHP zip エントリのサイズを返すために使用されます。 zip_entry_compressionmethod() は、常に PHP zip ファイルの圧縮方法を返します。 PHP $zip メソッドには、zip_entry_filesize() などの追加の子メソッドがいくつかあり、圧縮ファイルのサイズを計算し、PHP zip ファイル内にすでに作成されている正確なファイル サイズを返します。同様に、zip_entry_name()、open()、read()、zip_entry_open()、および zip_entry_read() は、PHP コード内の圧縮された概念に関する操作を実行するためのデフォルトのメソッドです。複数のファイルを含む zip ファイルを作成することも可能で、フォルダーをダウンロードまたは解凍するために常に zip ファイルがブラウザーに送信されます。

ZipArchive クラスのインスタンスを作成したら、デフォルトのメソッド open (datatype filename, datatype flag) 関数を使用して、crud 操作のために zip ファイルを開くことができます。 ziparchive には、ファイル内にすでに存在する zip ファイルをオーバーライドするためのフラグがいくつかあります。 create a フラグを使用すると、ziparchive クラスはメソッドが存在せずに zip を作成しました。 zip ファイルが開かれたら、zip ファイルにファイルを追加するための addFile(datatype path, datatype filename) メソッドを使用して、追加のファイルをそれに追加できます。 zip ファイルがファイル内にすでに存在する場合、ZipArchive クラスはファイルを識別し、コードから削除します。

さまざまな例を以下に示します:

例 #1

コード:

<!DOCTYPE html>
<html>
<body>
<?php
$zi = new ZipArchive();
$zippaths = 'F:\first.zip';
$fg = (file_exists($zippaths))? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE;
if($zi->open($zippaths, $fg) === true){
$zi->addFromString('first.txt', 'wWlcome To My Domain.', 'Have a Nice dayej,SHJKHJDHHBSJXNBCXJjsdkfhjndmhdkjhfdmnkjdndsjkbjdsfnbdndfbHNZBXHjhbjnhsabshjhmbsjnsm');
$zi->addFromString('first.txt', 'wWlcome To My Domain.', 'Have a Nice dayej,SHJKHJDHHBSJXNBCXJHNZBXHjhyteeeuikjwqhkjqmnk12323443bjnhsabshjhmbsjnsm');
$zi->addFromString('first.txt', 'wWlcome To My Domain.', 'Have a Nice dayej,SHJKHJDHHBSJXNBCXJHNZBXHjhbjrrreeewnhsabshjhmbsjnsm');
$zi->addFromString('first.txt', 'wWlcome To My Domain.', 'Have a Nice dayej,SHJKHJDHHBSJXNBCXJHNZBrttyyyyyXHjhbjnh5sabshjhmbsjnsm');
$zi->addFromString('first.txt', 'wWlcome To My Domain.', 'Have a Nice dayej,SHJKHJDHHBSJXNBCXJHNZBXHjhbjnhsabshjhmbsjnsm');
$zi->addFromString('first.txt', 'wWlcome To My Domain.', 'Have a Nice dayej,SHJKHJDHHBSJXNBgfghghyyytyyyyyyyyyyyyyyyyyyyyyyyyyyyuiueuiohjhiouoikjkuikjhiukCXJHN45rty6565656ZBXHjhbjnhsabshjhmbsjnsm');
$zi->addFromString('first.txt', 'wWlcome To My Domain.','Have a Nice dayej,SHJKHJDHHBSJXNBCXJHNZBXHjhbjnhsabshjhmbsjnsm');
$zi->close();
}
else{
echo "Thank you user have a nice day";
}
?>
</body>
</html>

出力:

PHP ジップ

例 #2

コード:

<!DOCTYPE html>
<html>
<body>
<?php
$z1 = new ZipArchive();
$filep = 'F:\second.zip';
$f1 = (file_exists($filep))? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE;
do
{
if($z1->open($filep, $f1) === true){
$z1->addFile('second.txt', '82365o97429032bIf the directory of the zip file is not exist, then it will throw an error. If you will not set the local name, then the default name and directory of the file will be the first parameter. And if the file doesnt exist, nothing will happen and it will return a false value.So you should create first a valid directory before you open or add a zip file.');
$z1->close();
}
else{
echo "Thank you user have a nice day";
}
}
while(!is_null($z1));
?>
</body>
</html>

出力:

PHP ジップ例 #3

コード:

<!DOCTYPE html>
<html>
<body>
<?php
$zq = zip_open("F:\third.zip");
if ($zq) {
while ($zip_entry = zip_read($zq)) {
echo "<p>";
echo "Welcome To My DOmainNull is a special data type which can have only one value: NULL. A variable of data type NULL is a variable that has no value assigned to it. Tip: If a variable is created without a value, it is automatically assigned a value of NULL " . zip_entry_name($zip_entry) . "<br>";
echo "Have a Nice Day: loop will always execute the block of code once, it will then check the condition, and repeat the loop while the specified condition is true. " .zip_entry_filesize($zip_entry);
echo "</p>";
}
zip_close($zq);
}
?>
</body>
</html>

出力:

PHP ジップ

結論

php_zip ファイルでは、メソッドはサーバー側のスクリプトで完全に圧縮されています。データを解凍する必要がある場合は、顧客側からデータをストリーミングするために使用されます。拡張子が付いているファイルデータも中断することなく転送されます。したがって、両方のクライアントからサーバーへのデータ損失、およびその逆のデータ損失を回避できます。

以上がPHP ジップの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:今のPHP次の記事:今のPHP