Laravel 4 - Composer Install每次都失败,即使我使用的是PHP 5.4

时间:2013-08-08 13:30:54

标签: php laravel laravel-4 composer-php

我遇到安装Laravel 4的问题......我按照此处发布的说明进行操作:

http://badubizzle.blogspot.com/2013/01/setting-up-laravel-4-on-webfaction.html

我的主机允许多个版本的PHP同时运行,因此运行命令php将在接下来指定的任何内容上运行php 5.2.17。我知道你需要大于php 5.3来运行Laravel 4,所以我使用php 5.4来实现这一点。我可以专门键入php54来运行php 5.4下的命令,或者在.bash_profile中可以使用别名来输入php,这就是我所做的。

现在,当我运行命令php -v时,我得到以下内容:

PHP 5.4.16 (cli) (built: Jul 24 2013 07:46:20) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
    with the ionCube PHP Loader v4.2.1, Copyright (c) 2002-2012, by ionCube Ltd.

我这样做的原因是因为在使用composer时,它似乎运行了许多命令,它在下载的laravel文件中找到,并且它们都以php开头,而不是{{ 1}},所以我想通过制作别名,我应该没事,对吧?错。

当我运行此行时:

php54

系统获取了一堆文件(就像它应该的那样),然后它会出现这个错误:

php ~/composer.phar install

当我研究这个错误时,我看到的一切都说错误是没有运行足够高的PHP版本,并且你需要运行Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/apps/laravel-master/artisan on line 46 Parse error: syntax error, unexpected T_STRING in /home/apps/laravel-master/artisan on line 46 Script php artisan optimize handling the post-install-cmd event returned with an error 或者其他东西。我这样做,我仍然得到这个错误!这里有什么想法?这真让我难过,我变得非常沮丧。我真的很感激任何人都可以提供帮助!!

修改

我尝试过关注Laravel的文档,并且在运行php54命令后遇到了同样的问题 - 它运行了一段时间,然后转到解析错误。我真的不知道这里有什么问题!

2 个答案:

答案 0 :(得分:2)

我不能直接评论思想家答案(看起来不够重复),但我可以说他所联系的答案不只是别名,而且对我有用。

打开composer.json,你会发现它正在尝试在安装后运行php命令,它只是使用常规的php,如:

php artisan optimize

您需要将其更改为:

/opt/php54/bin/php artisan optimize

无论路径是什么。在阅读json文件时,Composer似乎并不关心你的别名是什么。至少它没有在我安装Laravel的共享服务器上。

答案 1 :(得分:0)

当路径设置不正确时,这似乎是共享主机上的常见问题。我已经发布了一个解决方案here,也许它也适合你。