2010-02-17 1 views
7

Что такое хороший способ упаковать веб-приложение на PHP для упрощения развертывания? В настоящее время я использую make для создания gzipped tar-файла. В Java большинство людей используют Maven и строят WAR. Интересно, существует ли аналогичная стандартная практика в мире PHP.PHP Упаковка/Развертывание

Существует Maven для PHP. Интересно, это путь.

+0

1. http://www.capify.org/index.php/Capistrano 2. http://ant.apache.org/ –

+0

Для всего решения PHP мы используем [Phingistrano] (https://github.com/CodeMeme/Phingistrano). Он дает вам много функций Capistrano, но написан на php с использованием скриптов build [Phing] (http://www.phing.info). Это было здорово для нас. – Clint

+0

Если вы хотите явно использовать maven, вам нужно использовать его вместе с ant для развертывания проектов php, а затем использовать ant maven plugin, чтобы он работал с maven. – ant

ответ

12

Возможно, вам будет интересен архив PHP.

См. manual.

Расширение phar предоставляет возможность помещать целые PHP-приложения в один файл с именем «phar» (архив PHP) для упрощения распространения и установки. Помимо предоставления этой услуги расширение phar также предоставляет метод абстракции формата файла для создания и обработки файлов tar и zip через класс PharData, так как PDO предоставляет унифицированный интерфейс для доступа к различным базам данных. В отличие от PDO, который не может конвертировать между различными базами данных, Phar также может конвертировать между форматами tar, zip и phar с помощью одной строки кода. см. Phar :: convertToExecutable() для примера.

5

http://phing.info/

Phing Is Not GNU Make; это система создания проектов PHP или инструмент сборки, основанный на Apache Ant. Вы можете сделать что-нибудь с этим, что вы могли бы сделать с традиционной системой построения, такой как GNU make, и ее использование простых файлов XML-сборки и расширяемых классов «задач» PHP делает его простой в использовании и гибкой структуры построения. Возможности включают в себя выполнение модульных тестов PHPUnit и SimpleTest (включая результаты тестирования и покрытия), преобразования файлов (например, замена токенов, преобразование XSLT, преобразования шаблонов Smarty), операции с файловой системой, поддержка интерактивной сборки, выполнение SQL, операции CVS/SVN, инструменты для создание пакетов PEAR и многое другое.