File_Archive では、 ソースからファイルを選択する際にフィルタの概念を使用します。 フィルタとはリーダーの一種であり、 File_Archive::filter() 関数で作成することができます。 この関数には、述語を指定する必要があります。 述語を作成するには File_Archive::pred* 関数を使用します。
標準の論理述語は次のとおりです。
predTrue(): つねに true と評価されます
predFalse(): つねに false と評価されます
predAnd($p1, $p2, ...): $p1 && $p2 && ... と評価されます
predOr($p1, $p2, ...): $p1 || $p2 || ... と評価されます
predNot($p): !$p と評価されます
ファイルのフィルタリング用に、その他の述語も用意されています。
predMinSize($size): サイズが >= $size (バイト単位) であるファイルのみを残します
predMinTime($time): 最終更新時刻が $time (unix タイムスタンプ) 以降であるファイルのみを残します
predMaxDepth($depth): 公開名のディレクトリ階層が $depth より少ないファイルのみを残します
predExtension($list): 指定した拡張子のファイルのみを残します。 $list は拡張子の配列、あるいはカンマ区切り文字列となります
predEreg($ereg): 公開名が指定した正規表現にマッチするファイルのみを残します
predEregi($ereg): predEreg() と同じですが、大文字小文字を区別しません
predMIME($mimes): 指定した MIME タイプのファイルを選択します。 配列あるいは文字列で指定することができ、ワイルドカードを使用することも可能です。
例 43-1フィルタの例
|