2015-12-05 7 views
1

Я очень новичок в laravel и php, и я просто пытаюсь настроить среду разработки.Почему установка php53-mcrypt нарушает мой композитор и laravel?

Я заинтересован в использовании octobercms, и установка его была простой, но простой. Я попробовал установку консоли, набрав

composer create-project october/october myoctober dev-master 

который дал ошибку говоря Mcrypt не был установлен, так что я думал, что мой следующий шаг. Проведя часы, пытаясь выяснить, как установить его, я наткнулся на это

homebrew/php/php53-mcrypt 

и я завариваю его. Теперь, ларавел и мой композитор не сработают. Каждый раз, когда я пишу какую-либо команду композитора, я получаю это:

??+?% returned 

Никто на Google, кажется, есть эта проблема, и каждый раз, когда я пишу и команду Laravel в терминале я получаю какие-то ошибки, как это:

PHP Parse error: syntax error, unexpected '[', expecting ')' in /Users/marika/.composer/vendor/guzzlehttp/promises/src/functions.php on line 41 

Parse error: syntax error, unexpected '[', expecting ')' in /Users/marika/.composer/vendor/guzzlehttp/promises/src/functions.php on line 41 

это все работает, прежде чем я Brew установлен Mcrypt, и я попытался удалить, но это просто дал мне больше ошибок, поэтому я переустановил и теперь я не знаю, что еще делать.

+0

В более общем смысле, я тоже не рекомендуется разрабатывать на своей локальной машине с использованием среды homebrew dev для чего-либо, кроме игры с новой технологией. Я был там, и меня это очень раздражало. Моя текущая стратегия развивается с использованием контейнера докеров, который как можно ближе к производственному серверу. (На самом деле, наши серверы выпускают контейнеры для докеров.) – k0pernikus

ответ

1

У вас неправильная версия php. В строке 41 functions.php of guzzle, он говорит:

$promise = new Promise([$queue, 'run']); 

, который является короткий синтаксис массива. Вам нужно будет php5.4 запустить свой код, как doc состояний:

С PHP 5.4 вы можете также использовать короткий синтаксис массива, который заменяет массива() с [].

Как вы на MacOS, для того, чтобы получить более актуальную версию PHP, установить более новую версию с помощью:

brew tap homebrew/dupes 
brew tap homebrew/versions 
brew tap homebrew/homebrew-php 
brew install php56 
brew unlink php53 
brew link php56 

Source

+0

как я могу сделать обновление для пива? – begwebdev

+0

@begwebdev См. Http://justinhileman.info/article/reinstalling-php-on-mac-os-x/ – k0pernikus

+0

, поэтому вместо php53 я бы не установил php54? – begwebdev