[PHP]ZipArchiveを使う(備忘録)

皆さんこんにっちは。たてしきです。今日は合格発表なのに何やってるんだろ俺

サーバー側でZIPを作りたくなったので紹介。


ZipArchiveは自分のサーバーで使えるのか

まぁ、 phpinfo() でわかるんだけど、Xdomainサーバーは利用できないので、

っていうファイルを作って実行してみるのが一番。

ちなみにXdomainサーバーではエラーは出なかった。やったね。


ZIPを生成する

mixed ZipArchive::open ( string $filename [, int $flags ] )

$zip->open() で開けるようです。

$flagsのリスト:

  • ZipArchive::CREATE
  • ZipArchive::OVERWRITE
  • ZipArchive::EXCL
  • ZipArchive::CHECKCONS

CREATE

アーカイブが存在しない場合に、作成します。

OVERWRITE

常に新しいアーカイブを開始します。このモードは、 ファイルが既に存在する場合にはそれを上書きします。

EXCL

アーカイブが既に存在する場合はエラーとします。

CHECKCONS

アーカイブの一貫性チェックを別途行い、 失敗した場合はエラーとします。 (謎)


ファイルを追加する

bool ZipArchive::addFile ( string $filename [, string $localname = NULL [, int $start = 0 [, int $length = 0 ]]] )

ほぼ第2引数以降は使わないと思いますが…。

localname…アーカイブ内での名称

start,length…このパラメータは使いませんが、ZipArchive を継承するためには必要です。 (らしい)


ZIPを保存する

bool ZipArchive::close ( void )

ファイルを閉じて保存するらしい。


一連の動作をまとめた


最後に

ZipArchiveは使い慣れると楽しい。この記事書いてるときに合格発表あった、受かってた

また記事書きます。それでは。

0 comments