Drush PHP-Syntaxfehler beim Ausführen

9

Ich folge den Anweisungen zur Installation von Drush, die auf dieser Seite aufgeführt sind: https://github.com/drush-ops/drush/blob/master/docs/install.md

Ich erhalte anscheinend einen Syntaxfehler im Code:

[user@localhost ~]$ wget https://github.com/drush-ops/drush/releases/download/8.0.0-rc4/drush.phar
--2015-11-16 16:23:02--  https://github.com/drush-ops/drush/releases/download/8.0.0-rc4/drush.phar
Resolving github.com (github.com)... 192.30.252.131
Connecting to github.com (github.com)|192.30.252.131|:443... connected.
HTTP request sent, awaiting response... 302 Found
2015-11-16 16:23:05 (1.47 MB/s) - drush.phar saved [3496991/3496991]

[user@localhost ~]$ php drush.phar core-status

Parse error: syntax error, unexpected '[' in phar:///home/user/drush.phar/includes/output.inc on line 188

Ich sehe diesen Fehler nicht bei Google. Irgendeine Idee, wie man das behebt?

Richard von Essex
quelle
Welche PHP-Version verwenden Sie?
Kiamlaluno
Führen Sie drush im Drupal-Verzeichnis aus?
Kein Sssweat
PHP 5.3.29 (cli) (built: Nov 3 2015 15:43:40) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies
Richard von Essex
Es passiert, wenn ich in einem Drupal-Verzeichnis laufe und wenn ich es nicht tue. Unabhängig davon glaube ich nicht, dass Drush normalerweise so reagiert, wenn keine Installation gefunden wird. Andere Versionen wurden ordnungsgemäß beendet.
Richard von Essex
1
Ich werde hinzufügen, um sicherzustellen, dass Sie überprüfen, ob Sie die DRUSH_PHPUmgebungsvariable gesetzt haben. Ich habe viel zu lange versucht herauszufinden, warum drush PHP 5.6 nicht verwendet, obwohl dies in meinem Pfad konfiguriert wurde. Es stellte sich heraus, dass ich DRUSH_PHPmich vor langer Zeit auf meinen PHP 5.3-Pfad eingestellt hatte. unset DRUSH_PHPDas Problem wurde für mich behoben.
Benutzer

Antworten:

17

Sie verwenden Drush 8, für das eine PHP-Mindestversion von 5.4.5 erforderlich ist ( http://docs.drush.org/en/master/install/ ).

Ihre aktuelle Version (5.3) versteht die Syntax für kurze Arrays nicht, daher der Fehler, den Sie sehen.

Um dies zu beheben, aktualisieren Sie entweder PHP oder wechseln Sie zu einem älteren Zweig von Drush.

Clive
quelle
Ich habe das gleiche Problem. Ich habe PHP 5.3.29, Drupal 6 (PHP mit PHPBrew unter Ubuntu 14.04 installiert und dann auf Version 5.3.29 umgestellt). Wenn ich den Befehl drush statusausführe, wird Folgendes angezeigt: Warnung: Das Modul 'json' wurde bereits in Unbekannt in Zeile 0 geladen. PHP-Analysefehler: Syntaxfehler, unerwartetes '[' in phar: /// usr / local / bin / drush / includes / startup. inc in Zeile 63 Analysefehler: Syntaxfehler, unerwartetes '[' in phar: ///usr/local/bin/drush/includes/startup.inc in Zeile 63
Niladri Sarkar
0

Wenn auf Ihrem System mehr als eine PHP-Version installiert ist, können Sie einen Alias ​​in Ihrem .bashrc oder .bash_profile oder /etc/profile.d/global_aliases.sh (oder einem beliebigen Teil Ihres Systems, in dem Sie einen Alias ​​definieren können) definieren. Der Alias ​​würde drush mit der entsprechenden PHP-Version laufen.

Zum Beispiel können Sie in einem plesk-System wahrscheinlich so etwas tun

alias drush='/opt/plesk/php/5.6/bin/php /usr/local/drush'
GiorgosK
quelle