ディレクトリから、PCRE パターンを使ってファイルを追加する

# ZipArchive::addPattern

(PHP 5 >= 5.3.0, PHP 7, PECL zip >= 1.9.0)

ZipArchive::addPattern — ディレクトリから、PCRE パターンを使ってファイルを追加する

### 説明

ZipArchive::addPattern ( string `$pattern` [, string `$path` = "." [, array `$options` = array() ]] ) : bool

ディレクトリから、正規表現の `pattern` にマッチするファイルを追加します。 この操作は再帰処理ではありません。パターンマッチは、ファイル名に対してだけ行います。

### パラメータ

`pattern`

  PCRE のパターン。どのファイルを対象にするのかを指定します。

`path`

  スキャンするディレクトリ。デフォルトは、現在の作業ディレクトリです。

`options`

  オプションの連想配列。ZipArchive::addGlob() と同じオプションが使えます。

### 返り値

成功した場合に `TRUE` を、失敗した場合に `FALSE` を返します。

### 例

例1 ZipArchive::addPattern() の例

現在の作業ディレクトリにある、すべての PHP スクリプトとテキストファイルを追加します。

`<?php
$zip = new ZipArchive();
$ret = $zip->open('application.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE);
if ($ret !== TRUE) {
printf('Failed with code %d', $ret);
} else {
$directory = realpath('.');
$options = array('add_path' => 'sources/', 'remove_path' => $directory);
$zip->addPattern('/\.(?:php|txt)$/', $directory, $options);
$zip->close();
}
?>`

### 参考

- ZipArchive::addFile() - 指定したパスからファイルを ZIP アーカイブに追加する
- ZipArchive::addGlob() - ディレクトリから、glob パターンを使ってファイルを追加する