Ich führe Drush auf einem Host aus, auf dem mehrere Versionen von PHP installiert sind. Standardmäßig php --version
würden Sie 5.2.x erhalten, aber php53 und php54 sind auch verfügbar. In meinem .bash_profile habe ich also alias php='php53'
( php --version
= 5.3.13), wodurch Drush für einige Befehle funktioniert.
Ich erhalte jedoch weiterhin die Meldung "Ihre Befehlszeilen-PHP-Installation ist zu alt. Drush benötigt mindestens PHP 5.3.2" für einige sehr nützliche Befehle.
Ein paar wirklich nervige Beispiele:
drush pm-update
meldet, dass alle Module und der Kern erfolgreich gesichert und aktualisiert wurden, gibt dann den PHP-Versionsfehler zurück und stellt alle Sicherungen wieder her. Im ausführlichen Modus lautet der Befehl vor dem Fehler: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
gibt sofort den PHP-Versionsfehler zurück
Die anderen Befehle, die ich bisher ausprobiert habe, funktionieren einwandfrei. Ich bin mir nicht sicher, warum dies so ist, wenn Drush manchmal die php53-Binärdatei verwendet und manchmal nicht, oder wenn es nur Probleme gibt, die Version korrekt zu erkennen, aber einige sehr wichtige Funktionen für mich defekt sind.
export DRUSH_PHP=php53
. Eine andere Lösung wäre, sicherzustellen, dass php53 in Ihrem PATH vor jedem anderen PHP erscheint, wenn Sie Drush ausführen.