Symfony2 Composer安装在内部调用错误的php安装/版本

时间:2014-07-30 01:49:17

标签: symfony composer-php

我试图通过Composer设置Symfony 2.5。 首先我打电话:

 php5.3.8-cli /kunden/81425/composer.phar create-project symfony/framework-standard-edition hhcadm/ "2.5.*"

直到某些时候内部不再调用 php5.3.8-cli ,但不知何故使用 php 。问题是 php 是版本 4.4.9 ,这会导致以下影响:

Nothing to install or update
Generating autoload files
Updating the "app/config/parameters.yml" file
X-Powered-By: PHP/4.4.9
Content-type: text/html

<br />
<b>Parse error</b>:  syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in <b>/kunden/81425/hhcadm/vendor/sensio/distribution-bundle/Sensio/Bundle/DistributionBundle/Resources/bin/build_bootstrap.php</b> on line <b>13</b><br />
Script Sensio\Bundle\DistributionBundle\Composer\ScriptHandler::buildBootstrap handling the post-install-cmd event terminated with an exception



  [RuntimeException]
  An error occurred when generating the bootstrap file.

错误有意义,因为4.4.9太旧了。如何告诉Composer / Symfony安装程序在安装例程中使用哪个php安装?

当我打电话时,我也是如此:

php5.3.8-cli /kunden/81425/composer.phar install

我很不错,必须有一个配置/参数,但我现在几个小时都找不到它。

非常感谢。

1 个答案:

答案 0 :(得分:1)

&#39; PHP&#39;必须是PHP5可执行文件。 我看到的唯一解决方案是修改PATH,启动composer命令(并最终恢复旧路径)

例如:

OLDPATH=$PATH
PATH=/usr/local/php5/bin:$PATH
php /kunden/81425/composer.phar install
PATH=$OLDPATH

为了帮助您,您还可以创建一个小脚本&#39; composer.sh&#39; :

#!/bin/sh
OLDPATH=$PATH
PATH=/usr/local/php5/bin:$PATH
php /kunden/81425/composer.phar $*
PATH=$OLDPATH

你打电话给&#39; composer.sh install&#39;

编辑:如果所有的php二进制文件都是相同的,你可以创建符号链接

例如:

mkdir /usr/local/bin/php5
ln -s /usr/local/bin/php53-cli /usr/local/bin/php5/php

所以PATH = $ PATH:/ usr / local / bin / php5:$ PATH

编辑:如果您不允许创建/ usr / local / bin / php5,那么只需使用以下任何其他文件夹:

#!/bin/sh
OLDPATH=$PATH
PATH=/kunden/81425/php5:$PATH
php /kunden/81425/composer.phar $*
PATH=$OLDPATH