Here at Magma Digital, we use Phing as part of our Continuous Integration (CI) set up. Phing is the glue that holds the PHP analysis tools we use together for the Jenkins CI server. Phing is called by Jenkins and runs the target tasks defined in our build file (build.xml) after we’ve committed code to the version control system. These tasks are aimed at checking the quality of our code and help us to reliably and confidently deploy code for our clients.
For us, Phing takes the potential pain out of deploying code by reliably automating the steps required in the build file. The build file also documents the processes undertaken for a given project, so when you revisit the project some time later, you know how to deploy or build it again within a few moments. For me, use of a system like Phing is one of the elements that sets apart those who simply use PHP to get a job done, from those of us who see PHP as part of strong ecosystem of PHP related tools that enable us to compete in business critical development alongside other languages. If you want to improve your PHP skills you should certainly get a firm grasp of the power of Phing!
I’ve included the slides I presented in the hope that you find them useful as you explore Phing for your CI or deployment needs.