Phing uses XML buildfiles that contain a description of the things to do. The buildfile is structured into targets that contain the actual commands to perform (e.g. commands to copy a file, delete a directory, perform a DB query, etc.). So, to use Phing, you would first write your buildfile and then you would run phing, specifying the target in your buildfile that you want to execute.
% phing -f mybuildfile.xml mytarget
By default Phing will look for a buildfile named
build.xml (so you don't have to specify the buildfile name
unless it is not
build.xml) and if no target is specified
Phing will try to execute the default target, as specified in the
In the same way as traditional make files (but without most of the traditional drawbacks) targets can have dependencies. They can depend on both other targets as well as other files.