Erro na sintaxe do PHP ao executar


9

Estou seguindo as instruções para instalar o Drush listadas nesta página: https://github.com/drush-ops/drush/blob/master/docs/install.md

Parece que estou recebendo um erro de sintaxe no 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

Não estou vendo esse erro no Google. Alguma idéia de como consertar isso?


Qual versão do PHP você está usando?
kiamlaluno

Você está executando drush dentro do diretório Drupal?
Não 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 of Essex

Isso acontece quando eu corro em um diretório Drupal e quando não. Independentemente disso, eu não acho que é assim que o Drush normalmente reage ao não encontrar uma instalação. Outras versões foram encerradas normalmente.
Richard of Essex

11
Vou adicionar para garantir que você verifique se você tem a DRUSH_PHPvariável de ambiente definida. Passei muito tempo tentando descobrir por que o drush não estava usando o php 5.6, mesmo que fosse o que estava configurado no meu caminho. Acontece que eu tinha DRUSH_PHPdefinido o meu caminho php 5.3 de muito tempo atrás. unset DRUSH_PHPcorrigiu o problema para mim.
Utilizador

Respostas:


17

Você está usando o Drush 8, que requer uma versão mínima do PHP da 5.4.5 ( http://docs.drush.org/en/master/install/ ).

Sua versão atual (5.3) não entende a sintaxe de matriz curta, daí o erro que você está vendo.

Para corrigir, atualize o PHP ou mude para um ramo mais antigo do Drush.


Estou tendo o mesmo problema. Eu tenho o PHP 5.3.29, Drupal 6 (php instalado usando o phpbrew no Ubuntu 14.04 e depois mudei para a versão 5.3.29). Quando executo o comando drush status, recebo: Aviso: O módulo 'json' já está carregado em Desconhecido na linha 0 Erro de análise do PHP: erro de sintaxe, inesperado '[' em phar: /// usr / local / bin / drush / includes / startup. inc na linha 63 Erro de análise: erro de sintaxe, inesperado '[' em phar: ///usr/local/bin/drush/includes/startup.inc na linha 63
Niladri Sarkar

0

Se o seu sistema possui mais de uma versão php instalada, você pode definir um alias no seu .bashrc ou .bash_profile ou /etc/profile.d/global_aliases.sh (ou em qualquer parte do seu sistema que você possa definir um alias). O alias rodaria drush com a versão php apropriada.

Por exemplo, em um sistema plesk, você provavelmente pode fazer algo assim

alias drush='/opt/plesk/php/5.6/bin/php /usr/local/drush'
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.