Symfony2 Composer install内部调用错误的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 SensioBundleDistributionBundleComposerScriptHandler::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

我很确定一定有一个配置/参数,但我现在找不到它几个小时了。

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

例如:

OLDPATH=$PATH
PATH=/usr/local/php5/bin:$PATH
php /kunden/81425/composer.phar install
PATH=$OLDPATH
为了帮助你,你也可以创建一个小脚本'composer.sh':
#!/bin/sh
OLDPATH=$PATH
PATH=/usr/local/php5/bin:$PATH
php /kunden/81425/composer.phar $*
PATH=$OLDPATH

然后调用'composer.sh install'

编辑:如果所有的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

相关内容

  • 没有找到相关文章

最新更新