如何在 composer 之前使用相应的 php 版本名称

How to use the respective php version name prior to composer

我尝试使用 composer 安装扩展:

composer require magenest/module-worldpay-and-subscriptions:2.0.0

得到这个:

  [InvalidArgumentException]
  Package magenest/module-worldpay-and-subscriptions at version 2.0.0 has a PHP requirement incompatible with your PHP version (5.4.45)

当我 运行 php -v 命令时 returns:

PHP 5.4.45 (cli) (built: Nov 28 2017 10:34:31)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
    with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.0.4, Copyright (c) 2002-2017, by ionCube Ltd.
    with Zend OPcache v7.0.5, Copyright (c) 1999-2015, by Zend Technologies

但是,我的服务器上安装了所有 PHP 版本,所以当我 运行 命令时,我通常会事先指定 PHP 版本,例如php-7.0 bin/magento

此外,在使用 fakechroot 时 - 它在域组本身的上下文中设置了 PHP 版本。例如,当我 运行 这个命令时:/usr/bin/fakechroot /usr/sbin/chroot /microcloud/domains/vampm2 /bin/bash 然后 php -v 我得到:

[http]$ /usr/bin/fakechroot /usr/sbin/chroot /microcloud/domains/vampm2 /bin/bash
bash-4.1$ php -v
PHP 7.0.26 (cli) (built: Dec 19 2017 17:26:19) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v10.0.4, Copyright (c) 2002-2017, by ionCube Ltd.
    with Zend OPcache v7.0.26, Copyright (c) 1999-2017, by Zend Technologies
bash-4.1$ exit

谁能告诉我如何在没有作曲家的情况下 运行 composer require 读取默认的 PHP 5.4?致力于 Magento ver 2.1.8

如何运行指定版本的作曲家,例如就像我用 Magento php-7.0 bin/magento?

共有三个选项:

  1. 运行 composer 与另一个 PHP 版本,例如。通过 php-7.0 $(which composer)
  2. 通过像 "platform": { "php": "7.0.12" } 这样的配置键为您的 composer.json 添加不同的版本要求(有关详细信息,请参阅 https://getcomposer.org/doc/06-config.md#platform
  3. 运行 composer 带有标志 --ignore-platform-reqs 以完全忽略平台要求。然后安装你需要的任何东西,而不检查安装的 PHP 版本或扩展