Phing — система сборки PHP-проектов, созданная по аналогии с Apache Ant. Система сборки, т.е. Phing читает конфигурационный файл build.xml и выполняет все действия по созданию проекта: выборка и копирование необходимых файлов проекта в новую папку сборки, архивирование файлов проекта (для создания резервной копии), загрузка файлов проекта по FTP, обработка PHP-файлов (удаление комментариев, пробелов, символов табуляции и др.), запуск тестирования, работу с GIT. Использование Phing, автоматизирует рутинную работу по базовым перечисленным операциям.
Использование Phing для сборки
На сайте Phing указана возможность работы системы на разных платформах, гибкость работы и отсутствие зависимостей от других проектов (это хорошо 🙂 ).
Установка проста с Composer:
{ "require-dev": { "phing/phing": "2.*" } }
Вариант файла сборки:
<?xml version="1.0"?> <project name="myproject" default="main"> <property name="name" value="Vasiliy" /> <target name="firsttarget"> <delete dir="build" /> <fileset dir="." id="phpfiles"> <include name="class/*.php" /> </fileset> <copy todir="build/class" > <fileset refid="phpfiles" /> <filterchain> <stripphpcomments /> </filterchain> </copy> </target> <target name="secondtarget" depends="firsttarget" /> <target name="main" depends="secondtarget"> <echo>someinfo: ${name}</echo> </target> </project>
Документация по сборке проектов в Phing.