为什么安装php53-mcrypt打破了我的作曲家和laravel?

时间:2015-12-05 17:28:30

标签: php macos composer-php homebrew mcrypt

我对laravel和php很新,我只是想设置我的开发环境。

我对使用octobercms很感兴趣,安装它简直就是这么简单。我通过输入

尝试了控制台安装
composer create-project october/october myoctober dev-master

错误地说mcrypt没有安装,所以我认为这是我的下一步。花了好几个小时试图找出如何安装它后,我遇到了这个

homebrew/php/php53-mcrypt

我酿造了它。现在,laravel和我的作曲家不会工作。每次我写任何类型的作曲家命令,我都会得到这个:

??+?% 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

在我安装mcrypt之前一切正常,我试图卸载但这只是给了我更多的错误,所以我重新安装了,现在我不知道还能做什么。

1 个答案:

答案 0 :(得分:1)

你有错误的PHP版本。在functions.php of guzzle的第41行,它说:

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

这是短数组语法。您将需要php5.4来运行您的代码,如doc所述:

  

从PHP 5.4开始,您还可以使用替换的短数组语法   array()with []。

当您使用MacOS时,为了获得更新版本的PHP,请通过以下方式安装更新版本:

//Load assets
Crafty.sprite("assets/img/q.png", {
qd1 : [ 0, 0, 17, 16 ],
qd2 : [ 0, 17, 17, 16 ]
});

var a=Crafty.e("2D, Canvas, SpriteAnimation, qd1").attr({x : 355, y : 225});

Source