A Composer package which installs the PhantomJS binary (Linux, Windows, Mac) into /bin
of your project.
To install PhantomJS as a local, per-project dependency to your project, simply add a dependency on jakoch/phantomjs-installer
to your project's composer.json
file.
{
"require": {
"jakoch/phantomjs-installer": "1.9.7"
}
}
The version number of the package specifies the PhantomJS version! "dev-master" is "v1.9.7". The download source used is: https://bitbucket.org/ariya/phantomjs/downloads/
Currently Composer does not pass events to the handler scripts of dependencies.
You might execute the installer a) manually or b) by adding the following additional settings to your composer.json
:
{
"scripts": {
"post-install-cmd": [
"PhantomInstaller\\Installer::installPhantomJS"
],
"post-update-cmd": [
"PhantomInstaller\\Installer::installPhantomJS"
]
}
}
Now, assuming that the scripts section is set up as required, the PhantomJS binary
will be installed into the /bin
folder and updated alongside the project's Composer dependencies.
-
Fetching the PhantomJS Installer In your composer.json you require the package "phantomjs-installer". The package is fetched by composer and stored into
./vendor/jakoch/phantomjs-installer
. It contains only one file thePhantomInstaller\\Installer
. -
Platform-specific download of PhantomJS The
PhantomInstaller\\Installer
is run as a "post-install-cmd". That's why you need the "scripts" section in your "composer.json". The installer creates a new composer in-memory package "phantomjs", detects your OS and downloads the correct Phantom version to the folder./vendor/jakoch/phantomjs
. All PhantomJS files reside there, especially theexamples
. -
Installation into
/bin
folder The binary is then copied from./vendor/jakoch/phantomjs
to your/bin
folder.