Sto eseguendo Drush su un host su cui sono installate più versioni di PHP. Di default, php --version
ti darebbe 5.2.x, ma sono disponibili anche php53 e php54. Quindi nel mio .bash_profile ho alias php='php53'
( php --version
= 5.3.13), che fa funzionare Drush per alcuni comandi.
Tuttavia, ricevo ancora "La tua installazione di PHP a riga di comando è troppo vecchia. Drush richiede almeno PHP 5.3.2" per alcuni comandi molto utili.
Un paio di casi davvero fastidiosi:
drush pm-update
segnalerà che ha eseguito il backup e quindi ha aggiornato con successo tutti i moduli e il core, quindi restituisce l'errore della versione di PHP e ripristina tutti i backup. In modalità dettagliata, il comando che precede l'errore è:php /home/[username]/drush/drush.php --backend=2 --verbose --root=/home/[username]/webapps/drup --uri=http://[domain name] pm-updatecode-postupdate 2>&1
drush archive-dump
restituirà immediatamente l'errore della versione di PHP
Gli altri comandi che ho provato finora funzionano bene. Non sono sicuro del motivo per cui questo sarebbe, se Drush a volte utilizza il binario php53, altre volte no, o se ha solo problemi a rilevare correttamente la versione, ma alcune funzionalità molto importanti sono rotte per me.
export DRUSH_PHP=php53
. Un'altra soluzione sarebbe quella di assicurare che php53 appaia nel PERCORSO prima di qualsiasi altro PHP durante l'esecuzione di Drush.