ホームページ >バックエンド開発 >PHPチュートリアル >pclzip は指定されたディレクトリを圧縮します。パラメータが非常に残念です。解決策に感謝していません。
pclzip は指定されたディレクトリを圧縮します。助けてください。
たとえば、このファイル全体を /data に配置する必要があります。パッケージ内 パスには、現在のサイトのファイルとディレクトリのみが含まれます。
$z = new PclZip(YSROOT.'/data/back_090508.zip');
$result = $z->create('parameter'); ここでパラメータを入力するにはどうすればよいですか?
YSROOT を試しました。YSROOT は、パーティションのルート ディレクトリからサイトのルート ディレクトリまですべてのパスを伝送しますが、少し冗長です。
../ も試してみましたが、解凍後は指定したディレクトリの上位層になるので、あまり直感的に制御できません。
本当に急いでいます。親切に助けてください。感謝はしていません
-----解決策-------- -- ----------
PclZip の紹介と使い方
------解決策---------
これまでこのクラスを使用したことがありません
を押してください彼の説明のために、ディレクトリ名を教えてください。
------解決策---------
//ディレクトリextract/folder/に解凍します。 [php]$list = $archive->extract(PCLZIP_OPT_PATH, "extract/folder/");[/php] //このディレクトリを圧縮ファイルに追加します。完了すると、圧縮ファイル内にバックアップ ディレクトリが作成され、バックアップ内にこれら 2 つのドキュメントが含まれます。 [php]$list = $archive->create("file.txt,image.gif",PCLZIP_OPT_ADD_PATH, "backup");[/php] //パスの一部を削除すると、完了するとtest/file.txtになります。 [php]$list = $archive->add("/usr/local/user/test/file.txt",PCLZIP_OPT_REMOVE_PATH, "/usr/local/user");[/php] //すべてのパスを削除します。圧縮ファイルが作成されると、その中には file.txt と image.gif のみが存在し、ディレクトリは存在しません。 [php]$list = $archive->create("data/file.txt 画像/image.gif",PCLZIP_OPT_REMOVE_ALL_PATH);[/php] //解凍されたドキュメントのCHMODを0777に設定します [php]$list = $archive->extract(PCLZIP_OPT_SET_CHMOD, 0777);[/php] //解凍されたファイルのリスト。次のような配列にすることができます。 [php]$rule_list[0] = 'test/aaa.txt'; $rule_list[1] = 'test/ddd.txt';[/php] //または次のように、文字列内で、解凍する各ドキュメントをカンマで区切ります。 [php]$rule_list = "test/aaa.txt,test/ddd.txt"; $list = $archive->extract(PCLZIP_OPT_BY_NAME,$rule_list);[/php] //一部のドキュメントを解凍するには、PHP の ereg() 関数を使用します。ドキュメント名の比較が成功すると、ドキュメントが解凍されます。 [php]$list = $archive->extract(PCLZIP_OPT_BY_EREG, "aa");[/php] //一部のドキュメントを解凍するには、PHP の preg_match() 関数を使用します。比較に成功したドキュメント名は解凍されます。 [php]$list = $archive->extract(PCLZIP_OPT_BY_PREG, "/^bb/");[/php] //上記 2 つの関数がわからない場合は、まず正規表現を勉強してください。 //配列内の要素のインデックスに従って解凍しますが、index ==! についてはよくわかりません。 [php]$list = $archive->extract(PCLZIP_OPT_BY_INDEX, array('0-1','6-7'));[/php] //ドキュメントの内容を文字列に解凍します。 [php]$list = $archive->extract(PCLZIP_OPT_BY_NAME, "data/readme.txt",PCLZIP_OPT_EXTRACT_AS_STRING);[/php] //ドキュメントの内容を解凍して直接出力(エコー) [php]$list = $archive->extract(PCLZIP_OPT_BY_NAME, "data/readme.txt",PCLZIP_OPT_EXTRACT_IN_OUTPUT);[/php] //圧縮ファイルにドキュメントを追加しますが、ドキュメントは圧縮されません [php]$list = $archive->add("data/file.txt", PCLZIP_OPT_NO_COMPRESSION);[/php] //この圧縮ファイルにアノテーションを追加します。元々アノテーションがあった場合は上書きされます。 [php]$list = $archive->create("データ", PCLZIP_OPT_COMMENT, "コメントを追加");[/php] //この圧縮ファイルにコメントを追加します。すでにコメントがある場合は、それに従います。 [php]$list = $archive->add("data", PCLZIP_OPT_ADD_COMMENT, "既存のコメントの後にコメントを追加します");[/php] //この圧縮ファイルにアノテーションを追加します。元々アノテーションが存在する場合は、元のアノテーションの前に配置されます。 [php]$list = $archive->add("data", PCLZIP_OPT_PREPEND_COMMENT, "既存のコメントの前にコメントを追加します");[/php] <div class="clear"></div>