Error de sintaxis PHP Drush al ejecutar

9

Estoy siguiendo las instrucciones para instalar Drush que se enumeran en esta página: https://github.com/drush-ops/drush/blob/master/docs/install.md

Parece que recibo un error de sintaxis dentro del código:

[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

No veo este error en Google. ¿Alguna idea de cómo arreglarlo?

Ricardo de Essex
fuente
¿Qué versión de PHP estás usando?
kiamlaluno
¿Estás ejecutando drush dentro del directorio de Drupal?
No 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
Ricardo de Essex
Sucede cuando ejecuto en un directorio de Drupal y cuando no lo hago. De todos modos, no creo que así es como Drush reacciona normalmente al no encontrar una instalación. Otras versiones han salido con gracia.
Ricardo de Essex
1
Agregaré para asegurarme de que verifique si tiene establecida la DRUSH_PHPvariable de entorno. Pasé demasiado tiempo tratando de descubrir por qué drush no estaba usando php 5.6 a pesar de que eso era lo que estaba configurado en mi camino. Resulta que había DRUSH_PHPestablecido mi ruta de php 5.3 desde hace mucho tiempo. unset DRUSH_PHPme solucionó el problema.
Usuario

Respuestas:

17

Está utilizando Drush 8, que requiere una versión mínima de PHP de 5.4.5 ( http://docs.drush.org/en/master/install/ ).

Su versión actual (5.3) no comprende la sintaxis de matriz corta, de ahí el error que está viendo.

Para solucionarlo, actualice PHP o cambie a una rama anterior de Drush.

Clive
fuente
Tengo el mismo problema. Tengo PHP 5.3.29, Drupal 6 (instalé php usando phpbrew en Ubuntu 14.04 y luego cambié a la versión 5.3.29). Cuando ejecuto el comando drush statusobtengo: Advertencia: el módulo 'json' ya está cargado en Desconocido en la línea 0 Error de análisis de PHP: error de sintaxis, inesperado '[' en phar: /// usr / local / bin / drush / includes / startup. inc en la línea 63 Error de análisis: error de sintaxis, inesperado '[' en phar: ///usr/local/bin/drush/includes/startup.inc en la línea 63
Niladri Sarkar
0

Si su sistema tiene más de una versión de php instalada, puede definir un alias en su .bashrc o .bash_profile o /etc/profile.d/global_aliases.sh (o cualquier parte de su sistema que pueda definir un alias). El alias se ejecutará drush con la versión adecuada de php.

Por ejemplo, en un sistema plesk probablemente pueda hacer algo como esto

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