内存耗尽和 PHP 版本不匹配错误。无法安装图像干预 laravel 5.5 包

Memory exhausted and PHP Version mismatch errors. Not able to install image intervention laravel 5.5 package

我想改变图像的颜色。所以我正在尝试使用 laravel 的 image/intervention。 按照他们的文件: http://image.intervention.io/getting_started/installation https://packagist.org/packages/intervention/image

当我尝试以下操作时,出现内存耗尽错误:

1。作曲家需要 intervention/image

错误: PHP 致命错误:第 223 行的 phar://C:/ProgramData/ComposerSetup/bin/composer.phar/src/Composer/DependencyResolver/Solver.php 中允许的 1610612736 字节内存耗尽(试图分配 4096 字节)

致命错误:第 223 行的 phar://C:/ProgramData/ComposerSetup/bin/composer.phar/src/Composer/DependencyResolver/Solver.php 中允许的 1610612736 字节内存已耗尽(已尝试分配 4096 字节)

查看 https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors 了解有关如何处理内存不足错误的更多信息。 E:\xampp\htdocs\Myproject>php -r "echo ini_get('memory_limit').PHP_EOL;" 512M

所以,我按照下面的link从memory_limit=512M增加到memory_limit=-1 https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors

现在,再次尝试这个命令 composer require intervention/image。现在我得到了一个不同的错误:

错误: 无法将您的要求解析为一组可安装的软件包。

问题 1 - 此软件包需要 php ~7.2.0,但您的 PHP 版本 (7.3.11) 不满足该要求。 问题2 - mpociot/vat-calculator dev-master 需要 ext-soap * -> 您的系统缺少请求的 PHP 扩展 soap。 - mpociot/vat-calculator dev-master 需要 ext-soap * -> 您的系统缺少请求的 PHP 扩展 soap。 - mpociot/vat-calculator dev-master 需要 ext-soap * -> 您的系统缺少请求的 PHP 扩展 soap。 - mpociot/vat-calculator dev-master 的安装请求 -> 可由 mpociot/vat-calculator[dev-master] 满足。

要启用扩展,请确认它们已在您的 .ini 文件中启用: - E:\xampp\php\php.ini 您还可以 运行 php --ini 在终端内查看 PHP 在 CLI 模式下使用了哪些文件。

安装失败,正在将 ./composer.json 还原为其原始内容。

为什么我会收到这些错误? 如何在我的应用程序中安装 image/intervention 软件包 我正在使用 laravel 5.5 , PHP 7.3.11

如错误所述,我是否必须安装 7.2.0 php 版本?或者还有其他解决办法吗?

第一个问题是因为在你的 composer.json 中有类似 "php": "~7.2" 的东西。更改为 "php": ^7.2" 以允许所有 PHP 次要版本高于 7.2。 运行 composer update php 修复 composer.lock

第二个问题是因为您在 PHP 中缺少 soap 扩展。尝试安装它。这个question/anwser可以帮到你。