PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

独自のファイルタスク | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

独自のファイルタスク

Table of Contents

Edited By

Gregory Beaver

$Date: 2008-10-09 15:17:31 $

多くの小規模なライブラリのパッケージでは、カスタマイズが必要になることはほとんどありません。 単にインストールすればそれで終わりです。package.xml 1.0 は、このような処理には適しています。 パッケージの規模が大きくなり複雑になってくると、ファイルの内容に少々手をいれたり データベースなどの外部のコンポーネントを変更したりする必要が出てきます。

package.xml 1.0 では、隠し機能として <replace> タグでファイルの内容を変更することができました。 たとえばこのようになります。

<file name="blah.php" role="php">
 <replace from="@token@" to="version" type="package-info"/>
 <replace from="@anothertoken@" to="php_dir" type="pear-config"/>
</file>

上の例は、インストール時に blah.php ファイルを探し、 str_replace() を使用してそのファイル内の文字列 @token@ をパッケージのバージョン番号に置き換えます。そして、文字列 @anothertoken@ を、 php_dir の設定値に置き換えます。

これは強力な機能ではありますが、package.xml バージョン 1.0 で使用可能なカスタマイズ用タグは、この replace タグだけです。 package.xml バージョン 2.0 を開発するにあたって、 "task" という拡張機能を追加することにしました。これは Phing のような独創的な作品に影響を受けたものです。

タスクの定義は、xml の <file> タグの子要素で行います。 タスクの実装は、PEAR_Task_Common タスクを継承して行います。

忘却曲線を使ってこの知識を確実に記憶に残す

フォーラムで「独自のファイルタスク」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | 独自のファイルタスク」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: