由于一些奇怪的解析错误,我无法运行工匠。
$ php artisan serve
Parse error: parse error, expecting "identifier (T_STRING)"' or
"variable (T_VARIABLE)"' or '{'' or '$'' in
/Library/WebServer/Documents/artisan on line 31
所以我想我需要运行composer install
,但后来我得到了这个:
Your requirements could not be resolved to an installable set of
packages.
Problem 1
- This package requires php >=5.5.9 but your PHP version does not satisfy that requirement. Problem 2
- classpreloader/classpreloader 2.0.0 requires php >=5.5.9 -> your PHP version does not satisfy that requirement.
- classpreloader/classpreloader 2.0.0 requires php >=5.5.9 -> your PHP version does not satisfy that requirement.
- Installation request for classpreloader/classpreloader 2.0.0 -> satisfiable by classpreloader/classpreloader[2.0.0].
所以我尝试安装php5.5或任何它应该工作的东西。
$ curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5 installing...
Installing package 5.5-10.8-frontenddev into root / Package
5.5-10.8-frontenddev is already installed at version
5.5.27-20150710-221744. You wanted to install version
5.5.27-20150710-221744.
所以在这一点上,我认为我已经满足了要求,但是composer install
同样存在问题。
不知道这里发生了什么,因为some time now似乎存在这个问题。
答案 0 :(得分:0)
解决方法是将--ignore-platform-reqs
传递给您的composer
命令。
当你可以使用正确版本的PHP运行你的作曲家时,这应该有用,例如
composer install --ignore-platform-reqs
另一种方法是通过Homebrew在macOS上安装不同的PHP版本,例如
brew install php56
brew install php72
然后您可以将其链接为:
ln -vs /usr/local/opt/php56/bin/php /usr/local/bin/php56
ln -vs /usr/local/opt/php72/bin/php /usr/local/bin/php72
然后您可以使用您选择的PHP版本运行composer,例如
php71 composer install