スクリプトの構造
インストール後に実行するスクリプトのクラスには、二つのメソッドが必須となります。
ひとつは init()、そしてもうひとつは
run() です。init()
メソッドは、すべてのスクリプトで同時に実行されます。
run() メソッドは各パラメータグループの最後にコールされ、
問い合わせに対するユーザの応答を処理します。
init() メソッド
boolean init (
PEAR_Config $config
, PEAR_PackageFile_v2 $self
, string|null $lastInstalledVersion
)
-
PEAR_Config $xml
-
インストールに使用する現在の設定。
-
PEAR_PackageFile_v2 $self
-
package.xml の内容をこのオブジェクトで抽象化したもの。
-
string|NULL $lastInstalledVersion
-
このパッケージの、最後にインストールされたバージョン。
これは非常に重要なパラメータで、
新規インストールなのか更新インストールなのかを確認する唯一の手がかりとなります。
このパラメータを使用すると、更新時の処理が必要かどうかを判断できます。
この関数は、初期化に成功した場合に TRUE、失敗した場合に
FALSE を返します。失敗したときにはスクリプトの実行を停止します。
run() メソッド
void run (
array $infoArray
, string $paramGroupId
)
-
array $infoArray
-
$paramGroupId が _undoOnError
の場合、$infoArray には正常に終了したパラメータグループセクションの一覧が含まれます。
これを使用して、インストールスクリプトがシステムに加えた変更を元に戻すことができます。
それ以外の場合は、$infoArray
には直近の <paramgroup>
セクションにおけるユーザの入力内容が含まれます。
-
string $paramGroupId
-
この変数には、_undoOnError か、あるいは直近の
<paramgroup> の <id> タグの内容が含まれます。
paramgroup の id はアンダースコア (_)
で開始できないこと、つまり _undoOnError
は PEAR インストーラからのみ指定されることに注意しましょう。