Lỗi cú pháp Drush PHP khi chạy


9

Tôi đang làm theo hướng dẫn để cài đặt Drush được liệt kê trên trang này: https://github.com/drush-ops/drush/blob/master/docs/install.md

Tôi dường như nhận được một lỗi cú pháp trong mã:

[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

Tôi không thấy lỗi này trên Google. Bất kỳ ý tưởng làm thế nào để sửa chữa nó?


Phiên bản PHP nào bạn đang sử dụng?
kiamlaluno

Bạn đang chạy drush trong thư mục Drupal?
Không có 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 của Essex

Nó xảy ra khi tôi chạy trong một thư mục Drupal và khi tôi không. Bất kể, tôi không nghĩ rằng đây là cách Drush thường phản ứng khi không tìm thấy bản cài đặt. Các phiên bản khác đã duyên dáng thoát ra.
Richard của Essex

1
Tôi sẽ thêm để đảm bảo bạn kiểm tra xem bạn đã DRUSH_PHPđặt biến môi trường chưa. Tôi đã dành quá nhiều thời gian để cố gắng tìm ra lý do tại sao drush không sử dụng php 5.6 mặc dù đó là thứ được cấu hình trong đường dẫn của tôi. Hóa ra tôi đã DRUSH_PHPthiết lập đường dẫn php 5.3 của mình từ rất lâu rồi. unset DRUSH_PHPkhắc phục sự cố cho tôi
Người dùng

Câu trả lời:


17

Bạn đang sử dụng Drush 8, yêu cầu phiên bản PHP tối thiểu 5.4.5 ( http://docs.drush.org/en/master/install/ ).

Phiên bản hiện tại của bạn (5.3) không hiểu cú pháp mảng ngắn, do đó bạn gặp phải lỗi.

Để khắc phục, hãy nâng cấp PHP hoặc chuyển sang một nhánh cũ của Drush.


Tôi gặp vấn đề tương tự. Tôi có PHP 5.3,29, Drupal 6 (đã cài đặt php bằng phpbrew trên Ubuntu 14.04 và sau đó chuyển sang phiên bản 5.3.29). Khi tôi chạy lệnh drush statusTôi đang nhận được: Cảnh báo: Mô-đun 'json' đã được tải trong Unknown trên dòng 0 Lỗi phân tích cú pháp: lỗi cú pháp, không mong muốn '[' trong phar: /// usr / local / bin / drush / gồm / startup. inc trên dòng 63 Lỗi phân tích cú pháp: lỗi cú pháp, không mong muốn '[' trong phar: ///usr/local/bin/drush/includes/startup.inc trên dòng 63
Niladri Sarkar

0

Nếu hệ thống của bạn có nhiều phiên bản php được cài đặt, bạn có thể xác định bí danh trong .bashrc hoặc .bash_profile hoặc /etc/profile.d/global_aliases.sh (hoặc bất kỳ phần nào trong hệ thống của bạn mà bạn có thể xác định bí danh). Bí danh sẽ chạy drush với phiên bản php thích hợp.

Ví dụ, trong một hệ thống plesk, bạn có thể làm điều gì đó như thế này

alias drush='/opt/plesk/php/5.6/bin/php /usr/local/drush'
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.