首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >composer将使用更新版本的php

composer将使用更新版本的php
EN

Stack Overflow用户
提问于 2013-03-28 10:41:10
回答 4查看 22.7K关注 0票数 21

如何让composer使用我安装的更新版本的php?我已经下载并在我所有的本地服务器上使用php 5.4,但当我下载composer时,它指向我的mac的默认版本#!/usr/ local /bin/env,即5.3.15。我尝试编辑编写器的可执行文件并更改使用的php,但它破坏了可执行文件。

我正在尝试使用composer来安装Laravel,但由于这个原因,它下载了错误的版本。

这是我的作曲器可执行文件顶部的样子,但是下面有一堆奇怪的字符。

代码语言:javascript
复制
#!/usr/bin/env php
<?php
/*
 * This file is part of Composer.
 *
 * (c) Nils Adermann <naderman@naderman.de>
 *     Jordi Boggiano <j.boggiano@seld.be>
 *
 * For the full copyright and license information, please view
 * the license that is located at the bottom of this file.
 */

Phar::mapPhar('composer.phar');
define('COMPOSER_DEV_WARNING_TIME', 1366931166);
require 'phar://composer.phar/bin/composer';

composer.json for laravel项目

代码语言:javascript
复制
{
    "require": {
        "laravel/framework": "4.0.*@dev"
    },
    "autoload": {
        "classmap": [
            "app/commands",
            "app/controllers",
            "app/models",
            "app/database/migrations",
            "app/database/seeds",
            "app/tests/TestCase.php"
        ]
    },
    "scripts": {
        "post-update-cmd": "php artisan optimize"
    },
    "minimum-stability": "dev"
}
EN

回答 4

Stack Overflow用户

发布于 2016-12-25 00:12:20

如果你不关心永久设置,下面的命令对我有效:

代码语言:javascript
复制
/Applications/MAMP/bin/php/php5.6.27/bin/php /usr/local/bin/composer install

语法为:

代码语言:javascript
复制
{PATH TO YOUR PHP VERSION} {PATH TO COMPOSER EXECUTABLE} {COMPOSER COMMAND}

要知道可执行文件的路径:which {EXECUTABLE}可能非常有用。例如:which composer给出了我在上面的命令中使用的以下输出:

代码语言:javascript
复制
/usr/local/bin/composer
票数 16
EN

Stack Overflow用户

发布于 2013-03-28 11:12:56

我找到问题了。我将composer.phar文件移动到我的/usr/local/bin/目录中,无论我做了什么,它总是使用5.3.15。我从我的压缩包中删除了可执行文件,重新下载了.phar,并将其移动到我的项目根目录下,然后运行"php composer.phar install“,看起来效果不错。

为了把事情弄清楚,我做了以下事情:

我将composer.phar留在了我的用户配置文件的根目录下

代码语言:javascript
复制
/Users/davidadams/composer.phar

然后我打开我的.bash_profile并添加了以下别名

代码语言:javascript
复制
alias composer='/usr/local/php5/bin/php /Users/davidadams/composer.phar'

这样我就可以在全球范围内使用它,并且我可以定义我想要使用哪个php版本。希望其他人会发现这一点很有用。

票数 13
EN

Stack Overflow用户

发布于 2013-03-29 19:46:24

默认情况下,*nix系统上的composer使用环境指定的PHP二进制文件/可执行文件。您可以在第一行中看到这一点,即shebang

代码语言:javascript
复制
#!/usr/bin/env php

您可以告诉shell使用更具体的PHP版本,例如:

代码语言:javascript
复制
#!/usr/local/php5/bin/php

在Windows系统上,如果您使用composer安装程序,您可以指定PHP二进制文件,然后安装程序将更改环境以满足这些需求。但是,您也可以很容易地重写批处理文件,或者配置windows操作系统使用特定的PHP二进制文件来执行.phar文件。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15673334

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档