Chapter 3 Setting-up Phing

The goal of this chapter is to help you obtain and correctly setup and execute Phing on your operating system. Once you setup Phing properly you shouldn't need to revisit this chapter, unless you're re-installing or moving your installation to another platform.

3.1 System Requirements

To use Phing you must have installed PHP version 5.6 or above compiled --with-libxml2, as well as --with-xsl if you want to make use of advanced functionality.

For more information on PHP and the required modules see the PHP [php] website. For a brief list of software dependencies see below.

3.1.1 Operating Systems

Designed for portability from the get go, Phing runs on all platforms that run PHP. However some advanced functionality may not work properly or is simply ignored on some platforms (i.e. chmod on the Windows platform).

To get the most out of Phing, a Unix style platform is recommended. Namely: Linux, FreeBSD, OpenBSD, etc.

3.1.2 Software Dependencies

For a detailed list of required and/or optional software and libraries, refer to the following table of Software Dependencies.

NB: This list is not exhaustive, please refer to individual Phing tasks to find out additional software requirements.

Table 3.1: Software Dependencies

SoftwareRequired forSource
PHP 5.6+Execution
PHPUnit 3.6.0+Optional; enables additional task(s)
Xdebug 2.0.5+Optional; enables additional task(s)
phpDocumentor 2.0.0b7+ (PEAR package)Optional; enables additional task(s)
VersionControl_SVN (PEAR package)Optional; enables additional task(s)
VersionControl_Git (PEAR package)Optional; enables additional task(s)
PHP_CodeSniffer (PEAR package)Optional; enables additional task(s)
Archive_Tar (PEAR package)Optional; enables additional task(s)
Services_Amazon_S3 (PEAR package)Optional; enables additional task(s)
HTTP_Request2 (PEAR package)Optional; enables additional task(s)
Net_FTP (PEAR package)Optional; enables SSL connection in FtpDeployTask
PHP DependOptional; enables additional task(s)
PHP Mess DetectorOptional; enables additional task(s)
PHP Copy/Paste DetectorOptional; enables additional task(s)


Phing does not work with safe mode enabled in PHP!