我在 laravel 8 上安装 maatwebsite/excel 时遇到问题 | php8个?

I have face a problem to install maatwebsite/excel on laravel 8 | php 8?

我在 laravel 8 上安装 maatwebsite/excel 时遇到了这个问题。我该如何解决? 注意:PHP 版本 运行 8。

问题是关于 Laravel Excel 的要求。似乎 PhpSpreadsheet: ^1.15 没有安装。这是 Laravel-Excel 3.1,

requirements 列表
PHP: ^7.2\|^8.0
Laravel: ^5.8
PhpSpreadsheet: ^1.15
PHP extension php_zip enabled
PHP extension php_xml enabled
PHP extension php_gd2 enabled
PHP extension php_iconv enabled
PHP extension php_simplexml enabled
PHP extension php_xmlreader enabled
PHP extension php_zlib enabled

确保在您的 php.ini 上安装并启用了这些。还要确保 composer.json 上的 php 版本设置如下:

"require": {
    "php": "^7.2|^8.0",
},

而不是像这样的东西 "php": ">=7.2"。查看 this 了解更多信息。如果有效,请告诉我。

我用

解决了这个问题
  1. 我只是从 php.ini 文件
  2. 启用 PHP gd extension
  3. 正在安装 PHP 软件包 PhpSpreadsheet

我只想在这里分享另一个相关的答案。如果您在 unix (linux) 上 运行,请尝试使用命令行安装 php-gd。尝试检查与您的系统相关的其他答案。

sudo apt-get update
sudo apt-get install php8.0-gd

相关:

How to install PHP GD in Ubuntu

install php-gd ext on Debian

Issue with enabling GD in PHP

如果您使用 windows。使用此命令。

composer require maatwebsite/excel --ignore-platform-reqs

此问题仅在 php 8.x 上发生!也许在最新的 php 7. 问题同上,即使 php-gd 处于活动状态仍然失败。当输入

composer require maatwebsite/excel

错误还是一样。检查时使用

php -i

(与控制台中的 phpinfo 基本相同)。我们可以看到 php gd 处于活动状态。目前不推荐这个答案。已修复与此问题相关的问题。

相关link:

https://github.com/Maatwebsite/Laravel-Excel/discussions/3191

支持

PHP8,请确保使用上面提到的包的 3.1.30。要查看其他问题,请阅读此 link.

https://github.com/Maatwebsite/Laravel-Excel/issues/2936

  1. 删除composer.lock (json) 然后 运行 下面的命令

  2. 作曲家要求phpoffice/phpspreadsheet

  3. 作曲家要求maatwebsite/excel

正在运行

我用
解决了 在 php.ini
中启用 zip 和 gd 扩展 或使用 sudo apt-get install php8.0-gd
安装 sudo apt-get 安装 php8.0-zip 使用 composer require maatwebsite/excel:^3.1 -W
-W 用于 with-all-dependencies