PHing
使って試してはいないけど、ドキュメント調査だけ。
- phpunitタスクがない。まぁ自分でタスクを作ればいいのかもしれないけど。
- 以下にあるようにテキストファイルに対する操作の機能が豊富。
Appendix B: Core Tasksより
- AdhocTaskdefTask: build.xml内でPHPコードを書いてタスクを定義できる。
- AdhocTypedefTask: データ型を定義できる。
- AppendTask: ファイルにテキストを追記する。
- AvailableTask: ファイルやディレクトリが存在するか調べる。
- CallTargetTask: 同じプロジェクト内のタスクを呼び出す。
- CopyTask: ファイルやディレクトリのコピー
- DeleteTask: ファイル削除
- EchoTask: 文字列の出力
- ExecTask: コマンドの実行
- ExitTask: エラー時に終了する。
- ForeachTask: 繰り返し実行
- InputTask: ユーザに入力を求める。
- MkdirTask: ディレクトリ作成
- MoveTask: ファイル移動
- PhingTask: 別のビルドファイルを呼び出す。
- PearPackageTask: PEARのpackage.xmlを作成する。
- PhpEvalTask: PHPコードの実行。
- PropertyTask: プロパティ変数に値をセットする。
- ReflexiveTask: ファイルを変更する。正規表現を使った置換やXSLTなど。
- ResolvePathTask: 相対パスを絶対パスにする。
- TarTask: tarballを作成する。
- TaskdefTask: ユーザ定義のタスクを導入する。
- TouchTask: ファイルのタイムスタンプの更新
- TypedefTask: ユーザ定義のデータ型を導入する。
- UpToDateTask: 二つのファイルのタイムスタンプを比較する。
- XsltTask: XSLT変換を実行する。
Appendix C: Core Types より
- FileList: ファイルのリスト
- FileSet: ワイルドカードを使ったファイルのリスト
- Path / Classpath: path を通すディレクトリの指定
- Core Filters: いろいろなフィルターを定義する(具体例は後述)。フィルターというだけあり、複数のフィルターを組み合わせることも可能。
- PhingFilterReader: 標準でないフィルターを呼び出す。自分でPHPで作成したものなど。
- ExpandProperties: プロパティをその値に変換するフィルター。${property}などと書いておくと変換される。
- HeadFilter: ファイルの先頭を抽出するフィルター。
- Line Contains: ある文字列を含む行だけを抜き出すフィルター。
- LineContainsRegexp: 正規表現にマッチする行だけを抽出する。
- PrefixLines: 各行の先頭に文字列を挿入する。
- ReplaceTokens: 文字列の置換
- ReplaceRegexp: 正規表現を使った文字列の置換
- StripLineBreaks: 改行の削除
- StripLineComments: コメント行を削除
- StripPhpComments: PHPのコメントを削除
- TabToSpaces: タブを空白にする。
- TailFilter: ファイルの末尾を抽出。
- XsltFilter: XSLT
- Core Mappers: マッパーというのはファイル名を指定するのに使用する。