2010-02-17 5 views
7

Qual è un buon modo per creare pacchetti di applicazioni Web in PHP per una facile implementazione? Attualmente sto usando make per generare un file tar gzip. In Java, molte persone usano Maven e costruiscono WAR. Mi chiedo se esiste una pratica standard simile nel mondo di PHP.PHP Packaging/Deployment

C'è un Maven per PHP. Mi chiedo se è la strada da percorrere.

+0

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

+0

Per una soluzione PHP tutto, utilizziamo [Phingistrano] (https://github.com/CodeMeme/Phingistrano). Ti dà molte delle funzionalità di Capistrano, ma è scritto in php usando gli script di compilazione [Phing] (http://www.phing.info). È stato grandioso per noi. – Clint

+0

Se si desidera utilizzare esplicitamente maven, è necessario utilizzarlo insieme a formica per distribuire progetti php, quindi utilizzare il plugin ant maven per farlo funzionare con Maven. – ant

risposta

12

archivio Il PHP potrebbe essere di vostro interesse.

Vedere manual.

L'estensione phar fornisce un modo per inserire intere applicazioni PHP in un singolo file denominato "phar" (Archivio PHP) per una facile distribuzione e installazione. Oltre a fornire questo servizio, l'estensione phar fornisce anche un metodo di astrazione in formato file per creare e manipolare i file tar e zip attraverso la classe PharData, proprio come PDO fornisce un'interfaccia unificata per l'accesso a diversi database. A differenza dei PDO, che non possono convertire tra diversi database, Phar può anche convertire tra i formati di file tar, zip e phar con una singola riga di codice. vedere Phar :: convertToExecutable() per un esempio.

5

http://phing.info/

Phing non è GNU make; è un sistema di sviluppo del progetto PHP o uno strumento di build basato su Apache Ant. Si può fare qualsiasi cosa che si possa fare con un sistema di build tradizionale come GNU make, e il suo uso di semplici file di build XML e classi "task" PHP estendibili lo rendono un framework di build facile da usare e altamente flessibile. Le funzionalità includono i test di unità PHPUnit e SimpleTest (inclusi i risultati dei test e i report di copertura), le trasformazioni dei file (ad es. Sostituzione di token, trasformazione XSLT, trasformazioni di Smarty), operazioni di file system, supporto di build interattivo, esecuzione SQL, operazioni CVS/SVN, strumenti per creazione di pacchetti PEAR e molto altro.