gpt4 book ai didi

php - Composer 脚本使用旧的 php 版本

转载 作者:可可西里 更新时间:2023-10-31 22:10:20 27 4
gpt4 key购买 nike

我在 webfaction 上托管了越来越多的网站。伟大的供应商!我遇到了一些我认为与 Linux 相关的问题。希望有人能帮忙。

SSH 命令 php -v 默认为旧版本的 php,所以我在 .bash_profile 中创建了一个别名:

alias composer="php70 $HOME/composer.phar"
alias php="php70"

当我执行 php -v 现在它返回 PHP 7.0。到目前为止,一切顺利!

PHP 7.0.0 (cli) (built: Dec  4 2015 12:58:58) ( NTS )

但是现在当我运行 composer 安装并在脚本中放置一个 php -v -> 我的 composer.json 文件中的 post-install-cmd 列表时:

{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.1.*"
},
"require-dev": {
"fzaninotto/faker": "~1.4",
"mockery/mockery": "0.9.*",
"phpunit/phpunit": "~4.0",
"phpspec/phpspec": "~2.1"
},
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/"
}
},
"autoload-dev": {
"classmap": [
"tests/TestCase.php"
]
},
"scripts": {
"post-install-cmd": [
"php -v",
"php artisan clear-compiled",
"php artisan optimize"
],
"pre-update-cmd": [
"php artisan clear-compiled"
],
"post-update-cmd": [
"php artisan optimize"
],
"post-root-package-install": [
"php -r \"copy('.env.example', '.env');\""
],
"post-create-project-cmd": [
"php artisan key:generate"
]
},
"config": {
"preferred-install": "dist"
}

现在 tt 再次返回旧的 php 版本,看这个截图:

screenshot composer install

也许这对你们这些男孩/女孩来说似乎完全合乎逻辑,但我被困在这里。

最佳答案

嗯,Composer 不会使用您的别名来执行 PHP。

您可以在 composer.json 中使用 php70 -v,但最好是将较新的 PHP 版本符号链接(symbolic link)到 /bin/php,以便 Composer 可以选择它:


创建一个~/bin文件夹

mkdir ~/bin

然后将较新的 PHP 版本 /usr/local/bin/php70 符号链接(symbolic link)到 ~/bin/php

ln -s /usr/local/bin/php70 ~/bin/php

最后,将此行添加到 .bash_profile 以将此文件夹附加到您的环境变量 PATH。

export PATH="$HOME/bin:$PATH"

关于php - Composer 脚本使用旧的 php 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34678410/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com