为了账号安全,请及时绑定邮箱和手机立即绑定

如何指定在运行“作曲家安装”时使用特定的PHP版本?

如何指定在运行“作曲家安装”时使用特定的PHP版本?

PHP
拉莫斯之舞 2022-09-17 21:05:48
在服务器中,我们有一些webapp,实际上同时安装了7.2和7.4。在运行作曲家安装时,它使用PHP设置作为系统中的默认设置,实际上是7.4。事实上$ which php/usr/bin/php$ php -vPHP 7.4.2 (cli) ...$ ls -la /usr/bin/phplrwxrwxrwx 1 root root 21 Nov 20 11:20 /usr/bin/php -> /etc/alternatives/php$  ls -la /etc/alternatives/phplrwxrwxrwx 1 root root 15 Feb 12 11:08 /etc/alternatives/php -> /usr/bin/php7.4我必须执行的应用程序是PHP 7.2,所以我需要作曲家尊重这一点。composer install我确信它试图使用PHP 7.4,因为它抱怨丢失了。但它已经安装并启用了 PHP 7.2。php7.4-mbstring

1 回答

?
慕丝7291255

TA贡献1859条经验 获得超6个赞

这里存在多个问题。

首先,您很可能真的不需要告诉使用一个或另一个解释器。如果您知道平台要求在运行时是正确的,但运行时可执行文件与可执行文件不同,您可以简单地说:composerinstall

composer install --ignore-platform-reqs

这样,composer 就不会检查运行时和扩展是否与您声明的内容匹配(但您需要确保在实际运行项目的服务器上满足这些要求)。composer.json


但是,如果您真的想使用不同的运行时执行作曲家...

composer使用shebang +来确定将使用哪个PHP可执行文件。env

基本上,它用于查找可用的可执行文件,就像您所做的那样。#!/usr/bin/env phpphp

如果你想使用不同的可执行文件,你只需要明确它。

例如,如果您的 PHP 7.2 安装在 上,而作曲家安装在 上,您只需要执行以下操作:/usr/bin/php7.2/usr/local/bin/composer

# /usr/bin/php7.2 /usr/local/bin/composer install


查看完整回答
反对 回复 2022-09-17
  • 1 回答
  • 0 关注
  • 99 浏览

添加回答

代码语言

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号