Laravel - 即使需要 PHP 版本也无法安装包

Laravel - Cannot install package even though PHP version is the required one

我在我的项目中安装一些作曲家包时遇到问题。

Problem 1
    - Installation request for spatie/image-optimizer 1.1.5 -> satisfiable by spatie/image-optimizer[1.1.5].
    - spatie/image-optimizer 1.1.5 requires php ^7.2 -> your PHP version (7.1.14) does not satisfy that requirement.
  Problem 2
    - Installation request for spatie/laravel-feed 2.2.1 -> satisfiable by spatie/laravel-feed[2.2.1].
    - spatie/laravel-feed 2.2.1 requires php ^7.2 -> your PHP version (7.1.14) does not satisfy that requirement.
  Problem 3
    - Installation request for spatie/laravel-newsletter 4.5.0 -> satisfiable by spatie/laravel-newsletter[4.5.0].
    - spatie/laravel-newsletter 4.5.0 requires php ~7.2 -> your PHP version (7.1.14) does not satisfy that requirement.
  Problem 4
    - Installation request for spatie/laravel-referer 1.4.0 -> satisfiable by spatie/laravel-referer[1.4.0].
    - spatie/laravel-referer 1.4.0 requires php ^7.2 -> your PHP version (7.1.14) does not satisfy that requirement.
  Problem 5
    - Installation request for spatie/laravel-sitemap 5.3.0 -> satisfiable by spatie/laravel-sitemap[5.3.0].
    - spatie/laravel-sitemap 5.3.0 requires php ^7.2 -> your PHP version (7.1.14) does not satisfy that requirement.
  Problem 6
    - spatie/image-optimizer 1.1.5 requires php ^7.2 -> your PHP version (7.1.14) does not satisfy that requirement.
    - spatie/image 1.7.2 requires spatie/image-optimizer ^1.0 -> satisfiable by spatie/image-optimizer[1.1.5].
    - Installation request for spatie/image 1.7.2 -> satisfiable by spatie/image[1.7.2].

即使我的 PHP 版本是 7.2.1,这些软件包也没有通过 composer.json 验证,即无法安装。 PHP CLI 版本也是 7.2.1。 (使用标准程序 phpinfo()php -v 检查了所有内容。

我正在使用 MAMP PRO 版本 4.4.1,并且列出的版本中最新的可配置 PHP 版本是 7.2.1(没关系,因为这些软件包的要求范围从 7.17.2.

https://github.com/spatie/image-optimizer/blob/master/composer.json#L19

https://github.com/spatie/laravel-newsletter/blob/master/composer.json#L20

https://github.com/spatie/laravel-feed/blob/master/composer.json#L33

https://github.com/spatie/laravel-referer/blob/master/composer.json#L19

https://github.com/spatie/laravel-sitemap/blob/master/composer.json#L19

正如我已经说过的,PHP 版本在 Apache 端和 CLI 端以及 MAMP PRO GUI 上看起来都不错。

PHP 7.2.1 (cli) (built: Jan 15 2018 12:20:50) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2017 Zend Technologies

MAMP PRO 配置:

MAMP PRO主机相关配置:

将 PHP 升级到版本 7.3 可能会解决这个问题,但我想跳过它,因为它必须在没有 MAMP PRO 帮助的情况下手动完成(因为我的 MAMP PRO 版本已获得许可,我需要另一个许可才能获得其中的内置 PHP 版本。

谢谢!

不确定是什么原因导致了这种情况,除了 composer.json 中的 a custom version defined:

{
    "config": {
        "platform": {
            "php": "7.1.14"
        }
    },

要解决此问题,您可以告诉作曲家忽略版本:

composer require spatie/image-optimizer --ignore-platform-reqs