2013-02-04 11 views
5

Non riesco a capire come eseguire zf.php (strumento Zend Framework 2) quando viene avviato con il compositore.Come installare lo strumento Zend Framework 2 con il compositore

Per prima cosa ho bootstrap compositore e zftool secondo la documentazione:

$ mkdir tmp && cd tmp 
$ curl -s https://getcomposer.org/installer | php 
$ ./composer.phar require zendframework/zftool:dev-master 

Questo funziona bene finora.

Ma quando provo a fare funzionare zf.php, ottengo errori:

$ vendor/zendframework/zftool/zf.php 
PHP Warning: require_once(/Users/seb/tmp/vendor/zendframework/zftool/vendor/autoload.php): failed to open stream: No such file or directory in /Users/seb/tmp/vendor/zendframework/zftool/zf.php on line 13 

Warning: require_once(/Users/seb/tmp/vendor/zendframework/zftool/vendor/autoload.php): failed to open stream: No such file or directory in /Users/seb/tmp/vendor/zendframework/zftool/zf.php on line 13 
PHP Fatal error: require_once(): Failed opening required '/Users/seb/tmp/vendor/zendframework/zftool/vendor/autoload.php' (include_path='.:/opt/local/lib/php') in /Users/seb/tmp/vendor/zendframework/zftool/zf.php on line 13 

Fatal error: require_once(): Failed opening required '/Users/seb/tmp/vendor/zendframework/zftool/vendor/autoload.php' (include_path='.:/opt/local/lib/php') in /Users/seb/tmp/vendor/zendframework/zftool/zf.php on line 13 

Che cosa sto facendo di sbagliato? Sto usando PHP 5.3.21 su Mac.

Ho anche provato sulla mia Debian VServer con PHP 5.4, stesso errore :(

risposta

9

Si dovrebbe copiare zf.php nella directory di root ed eseguirlo da lì.

$ mkdir tmp && cd tmp 
$ curl -s https://getcomposer.org/installer | php 
$ ./composer.phar require zendframework/zftool:dev-master 
$ cp vendor/zendframework/zftool/zf.php . 
$ php zf.php 
+2

Questo è stato il passo mancante, mi chiedo perché non hanno menzionati nella documentazione . Grazie! – seb

+1

Dovrebbero davvero aggiungerlo alla documentazione –

+0

Questo dovrebbe essere VERAMENTE nella documentazione. I documenti arrivano addirittura a farti credere che non devi farlo. – Layke

5

Installare Compositore .phar localmente

Se non avete installato il compositore a livello globale sulla vostra macchina, è possibile installarlo localmente nel progetto.

L'installazione di Composer localmente è solo un'esecuzione dell'installer nella directory del progetto (https://getcomposer.org/doc/00-intro.md).

curl -sS https://getcomposer.org/installer | php 

Nota: Se quanto sopra non riesce per qualche motivo, è possibile scaricare il programma di installazione con php invece:

php -r "readfile('https://getcomposer.org/installer');" | php 

Installare ZF2

git clone git://github.com/zendframework/ZendSkeletonApplication.git --recursive 
cd ZendSkeletonApplication 
php composer.phar self-update 
php composer.phar install 

Installare ZFTools (Installazione utilizzando Composer)

php composer.phar require zendframework/zftool:dev-master 
php composer.phar install 

creare un collegamento simbolico sarà installato

zf.php (strumento di Zend) nella cartella vendor/bin. Puoi eseguirlo con php vendor/bin/zf.php.

ln -s vendor/zendframework/zftool/zf2.bat zftools 
chmod +x zftools 
./zftools 

In questo caso, preferisco link simbolico, per l'aggiornamento del repository zftools, non ho bisogno di copiare nuovamente il file.

senza installazione, utilizzando il file PHAR

Un'altra alternativa per utilizzare gli strumenti ZF, senza creare script o alias, e scarica il formato PHAR.

wget https://packages.zendframework.com/zftool.phar --no-check-certificate 
php zftool.phar version 
ZFTool - Zend Framework 2 command line Tool 
The ZFTool is using Zend Framework 2.2.4 

Oppure si può scaricare zftool.phar e usarlo.

Nota 1: La risposta @akond è molto buona, sto solo presentando una risposta alternativa che mi piace usare.

Nota 2: questo esempio è stato eseguito su una macchina Windows utilizzando cygwin.

Buono installazione tutorial (ZF2 e ZF3)

Getting started: A skeleton application

Rif:

Zend Framework Tool (ZFTool)