Structure of a post-install script
The post-install script class must contain two methods, one named init(), and the other named run(). The init() method is called at the same time as all other post-install scripts. The run() method is called at the conclusion of each parameter group in order to process the user's responses to queries.
The init() method
boolean init (
PEAR_Config $config
, PEAR_PackageFile_v2 $self
, string|null $lastInstalledVersion
)
-
PEAR_Config
$xml -
The current configuration used for installation.
-
PEAR_PackageFile_v2
$self -
The package.xml contents as abstracted by this object.
-
string|NULL
$lastInstalledVersion -
The last version of this package that was installed. This is a very important parameter, as it is the only way to determine whether a package is being installed from scratch, or upgraded from a previous version. Using this parameter, it is possible to determine what incremental changes, if any, need to be performed.
The function has to return TRUE when initialization succeeded, FALSE when it failed. In the latter case, the post install script it stopped.
The run() method
void run (
array $infoArray
, string $paramGroupId
)
-
array
$infoArray -
if
$paramGroupIdis_undoOnError, then $infoArray will contain a list of successfully completed parameter group sections. This can be used to restore any system changes made by the installation script.Otherwise,
$infoArraycontains the results of the user input from the most recent <paramgroup> section.
-
string
$paramGroupId -
This variable either contains
_undoOnErroror the contents of the most recent <paramgroup>'s <id> tag. Note that paramgroup id cannot begin with an underscore (_), and so_undoOnErrorcan only be triggered by the PEAR installer.