実行時のDrush PHP構文エラー


9

このページにリストされているDrushをインストールするための指示に従っています:https : //github.com/drush-ops/drush/blob/master/docs/install.md

コード内で構文エラーが発生しているようです:

[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

Googleでこのエラーは発生していません。それを修正する方法はありますか?


PHPのどのバージョンを使用していますか?
kiamlaluno

Drupalディレクトリ内でdrushを実行していますか?
2015年

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
エセックスのリチャード

これは、Drupalディレクトリーで実行した場合とそうでない場合に発生します。いずれにせよ、Drushが通常、インストールを見つけられなかった場合の反応はこれだと思います。他のバージョンは正常に終了しました。
エセックスのリチャード

1
DRUSH_PHP環境変数が設定されているかどうかを確認するために追加します。私は、drushがphp 5.6を使用しなかった理由を理解するために長い時間を費やしました。DRUSH_PHP昔からphp 5.3のパスに設定していたことがわかりました。unset DRUSH_PHP私の問題を修正しました。
2015

回答:


17

Drush 8を使用しているため、PHPバージョン5.4.5以上が必要です(http://docs.drush.org/en/master/install/)。

現在のバージョン(5.3)は短い配列構文を理解していないため、エラーが表示されます。

修正するには、PHPをアップグレードするか、Drushの古いブランチに切り替えます。


同じ問題が発生しています。私はPHP 5.3.29、Drupal 6を使用しています(Ubuntu 14.04でphpbrewを使用してphpをインストールしてから、バージョン5.3.29に切り替えました)。コマンドを実行すると、次のdrush statusエラーメッセージが表示されます。警告:モジュール 'json'はすでに行0の不明に読み込まれていますPHP解析エラー:構文エラー、予期しない '['がphar:/// usr / local / bin / drush / includes / startupにあります。行63のinc解析エラー:構文エラー、行63のphar:///usr/local/bin/drush/includes/startup.incの予期しない '['
Niladri Sarkar

0

システムに複数のphpバージョンがインストールされている場合は、.bashrcまたは.bash_profileまたは/etc/profile.d/global_aliases.sh(またはシステムでエイリアスを定義できる部分)にエイリアスを定義できます。エイリアスは、適切なphpバージョンでdrushを実行します。

たとえば、pleskシステムでは、おそらく次のようなことができます

alias drush='/opt/plesk/php/5.6/bin/php /usr/local/drush'
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.