ZipArchive クラスは、ファイルの圧縮と解凍操作に特化したクラスで、ファイルを圧縮することでディスク容量を節約し、圧縮ファイルのサイズを小さくしてネットワーク送信を容易にします。
ZipArchive クラスでは、主に次のメソッドを使用します。
1: open (圧縮パッケージ ファイルを開く)
$zip = new \ZipArchive; $zip->open('test_new.zip', \ZipArchive::CREATE)
Parameter description :
最初のパラメータ: 開く圧縮パッケージ ファイル
2 番目のパラメータ:
ZIPARCHIVE::OVERWRITE
Always Create新しいファイル。指定した zip ファイルが存在する場合は上書きされます。
ZIPARCHIVE::CREATE
指定した zip ファイルが存在しない場合は、新しい zip ファイルを作成します。
ZIPARCHIVE::EXCL
指定された zip ファイルが存在する場合、エラーが報告されます。
ZIPARCHIVE::CHECKCONS
指定された zip に対して追加の整合性テストを実行します。
(無料の学習ビデオ チュートリアルの共有: php ビデオ チュートリアル)
2: addFile (指定されたファイルを圧縮パッケージに追加します)
//将test.txt文件添加到压缩包中 $zip->addFile('test.txt'); //第二个参数可对文件进行重命名
3: addEmptyDir (指定された空のディレクトリを圧縮パッケージに追加します)
//将一个空的目录添加到zip中 $zip->addEmptyDir ('newdir');
4: addFromString (指定された内容を含むファイルを圧縮パッケージに追加します) )
// 将有指定内容的new.txt文件添加到zip文件中 $zip->addFromString('new.txt', '要添加到new.txt文件中的文本');
5: extractTO (圧縮パッケージを指定されたディレクトリに解凍します)
$zip->extractTo('test');
6: getNameIndex (次に従ってファイル名を返します)インデックス)
$zip->getNameIndex(0);//返回压缩包中索引为0的文件名称
7: getStream (圧縮ファイル内のファイル名に従って、ファイルのテキスト ストリームを取得します)
$zip->getStream('hello.txt');
8: renameIndex (圧縮ファイル内のファイル名に従って) インデックス (0から開始) 圧縮ファイル内のファイル名を変更します)
/把压缩文件内第一个文件修改成newname.txt $zip->renameIndex(0,'newname.txt');
9: renameName (ファイルを変更します)
//把压缩文件内的word.txt修改成newword.txt $zip->renameName('word.txt','newword.txt');
10: deleteIndex (圧縮ファイル内のファイル名を元に圧縮ファイル内のファイルを削除)
//把压缩文件内第一个文件删除 $zip->deleteIndex (0);
11: deleteName (インデックスに基づいて圧縮ファイル内のファイルを削除します。名前でファイルを削除します)
//把压缩文件内的word.txt删除 $zip->deleteName('word.txt');
上記は、ZipArchive の一般的なメソッドの一部です。簡単な例をいくつか示します:
1: 圧縮パッケージを作成します
$zip = new \ZipArchive; if ($zip->open('test_new.zip', \ZipArchive::CREATE) === true) { // 将指定文件添加到zip中 $zip->addFile('test.txt'); // test.txt文件添加到zip并将其重命名为newfile.txt $zip->addFile('test.txt', 'newfile.txt'); // 将test.txt文件添加到zip文件中的test文件夹内 $zip->addFile('test.txt', 'test/newfile.txt'); //将一个空的目录添加到zip中 $zip->addEmptyDir ('test'); // 将有指定内容的new.txt文件添加到zip文件中 $zip->addFromString('new.txt', '要添加到new.txt文件中的文本'); // 将有指定内容的new.txt添加到zip文件中的test文件夹 $zip->addFromString('test/new.txt', '要添加到new.txt文件中的文本'); //将images目录下所有文件添加到zip中 if ($handle = opendir('images')){ // 添加目录中的所有文件 while (false !== ($entry = readdir($handle))){ if ($entry != "." && $entry != ".." && !is_dir('images/' . $entry)){ $zip->addFile('images/' . $entry); } } closedir($handle); } // 关闭zip文件 $zip->close(); }
2: 圧縮パッケージのファイル情報を取得し、指定されたファイルを解凍します圧縮パッケージ
$zip = new \ZipArchive; if ($zip->open('test_new.zip') === true) { //获取索引为0的文件名称 var_dump($zip->getNameIndex(0)); //将压缩包文件解压到test目录下 $zip->extractTo('test'); //获取压缩包指定文件的文本流 $stream = $zip->getStream('test.txt'); // 关闭zip文件 $zip->close(); $str = stream_get_contents($stream); //这里注意获取到的文本编码 var_dump($str); }
3: 圧縮パッケージ内の指定ファイルのファイル名を変更し、圧縮パッケージから削除する ファイル指定
$zip = new \ZipArchive; if ($zip->open('test_new.zip') === true) { //把压缩文件内索引为0的文件修改成newname.txt $zip->renameIndex(0,'newname.txt'); //把压缩文件内的new.txt修改成newword.txt $zip->renameName('new.txt','newword.txt'); //删除压缩文件内索引为0的文件 $zip->deleteIndex(0); //删除压缩文件的test.png $zip->deleteName('test.png'); // 关闭zip文件 $zip->close(); }
おすすめ関連記事とチュートリアル:php チュートリアル
以上がPHP は ZipArchive クラスを使用してファイルの圧縮と解凍を実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

phpidentifiesauser'ssessionsingsinssessionCookiesIds.1)whensession_start()iscalled、phpgeneratesauniquesidstoredsored incoookienadphpsessidontheuser'sbrowser.2)thisidallowsphptortorieSessiondatadata fromthata

PHPセッションのセキュリティは、次の測定を通じて達成できます。1。session_regenerate_id()を使用して、ユーザーがログインまたは重要な操作である場合にセッションIDを再生します。 2. HTTPSプロトコルを介して送信セッションIDを暗号化します。 3。Session_Save_Path()を使用して、セッションデータを保存し、権限を正しく設定するためのSecure Directoryを指定します。

phpsessionFilesToredInthededirectoryspecifiedBysession.save_path、通常/tmponunix-likesystemsorc:\ windows \ temponwindows.tocustomizethis:1)uesession_save_path()tosetaCustomdirectory、ensuringit'swritadistradistradistradistradistra

toretrievedatafrompsession、Startthessession withsession_start()andAccessvariablesshe $ _SessionArray.forexample:1)Startthessession:session_start()

セッションを使用して効率的なショッピングカートシステムを構築する手順には、次のものがあります。1)セッションの定義と機能を理解します。セッションは、リクエスト全体でユーザーのステータスを維持するために使用されるサーバー側のストレージメカニズムです。 2)ショッピングカートに製品を追加するなど、基本的なセッション管理を実装します。 3)製品の量管理と削除をサポートし、高度な使用状況に拡大します。 4)セッションデータを持続し、安全なセッション識別子を使用することにより、パフォーマンスとセキュリティを最適化します。

この記事では、PHPでインターフェイスを作成、実装、および使用する方法について説明し、コード組織と保守性の利点に焦点を当てています。

この記事では、PHPのCrypt()とpassword_hash()の違いについて、パスワードハッシュの違いについて説明し、最新のWebアプリケーションの実装、セキュリティ、および適合性に焦点を当てています。

記事では、入力検証、出力エンコード、およびOWASP ESAPIやHTML浄化器などのツールを使用して、PHPのクロスサイトスクリプト(XSS)を防止します。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

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

ドリームウィーバー CS6
ビジュアル Web 開発ツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

WebStorm Mac版
便利なJavaScript開発ツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

ホットトピック









