Composer需要phpoffice/phpspreadsheet不起作用

MrS*_*Scf 9 php excel phpspreadsheet

我想使用包Phpspreadsheet编写脚本.我不是PHP的经验.我试图通过sudo composer需要phpoffice/phpspreadsheet添加对我的脚本的引用.但它不起作用.我收到错误:在stallation失败,删除composer.json ....如果不知道为什么它不工作.任何的想法?

详细错误:

Your requirements could not be resolved to an installable set of packages.

Problem 1
- Installation request for phpoffice/phpspreadsheet ^1.0 -> satisfiable by phpoffice/phpspreadsheet[1.0.0].
- phpoffice/phpspreadsheet 1.0.0 requires ext-dom * -> the requested PHP extension dom is missing from your system.

To enable extensions, verify that they are enabled in those .ini files:
- /etc/php/7.0/cli/php.ini
- /etc/php/7.0/cli/conf.d/10-mysqlnd.ini
- /etc/php/7.0/cli/conf.d/10-opcache.ini
- /etc/php/7.0/cli/conf.d/10-pdo.ini
- /etc/php/7.0/cli/conf.d/20-calendar.ini
- /etc/php/7.0/cli/conf.d/20-ctype.ini
- /etc/php/7.0/cli/conf.d/20-exif.ini
- /etc/php/7.0/cli/conf.d/20-fileinfo.ini
- /etc/php/7.0/cli/conf.d/20-ftp.ini
- /etc/php/7.0/cli/conf.d/20-gettext.ini
- /etc/php/7.0/cli/conf.d/20-iconv.ini
- /etc/php/7.0/cli/conf.d/20-json.ini
- /etc/php/7.0/cli/conf.d/20-mcrypt.ini
- /etc/php/7.0/cli/conf.d/20-mysqli.ini
- /etc/php/7.0/cli/conf.d/20-pdo_mysql.ini
- /etc/php/7.0/cli/conf.d/20-phar.ini
- /etc/php/7.0/cli/conf.d/20-posix.ini
- /etc/php/7.0/cli/conf.d/20-readline.ini
- /etc/php/7.0/cli/conf.d/20-shmop.ini
- /etc/php/7.0/cli/conf.d/20-sockets.ini
- /etc/php/7.0/cli/conf.d/20-sysvmsg.ini
- /etc/php/7.0/cli/conf.d/20-sysvsem.ini
- /etc/php/7.0/cli/conf.d/20-sysvshm.ini
- /etc/php/7.0/cli/conf.d/20-tokenizer.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation failed, reverting ./composer.json to its original content.
Run Code Online (Sandbox Code Playgroud)

MrS*_*Scf 35

所以我应该安装

sudo apt install php-xml

sudo apt install php7.0-gd

sudo apt install php7.0-mbstring

sudo apt install php-zip

  • 为了连贯性,`sudo apt安装php7.0-xml php7.0-gd php7.0-mbstring php7.0-zip` (5认同)
  • 最好为每个命令指定 php 版本(`php7.3-xml`、`php7.3-gd`、`php7.3-mbstring`、`php7.3-zip`)。 (3认同)
  • 有人能够安装“php7.2”的 zip 扩展吗?它一直说 **E: 无法找到软件包 php7.2-zip E: 无法通过正则表达式“php7.2-zip”找到任何软件包** 我尝试了很多变体,但没有任何效果,我有 ** PHP 版本 7.2.17-1+ubuntu14.04.1+deb.sury.org+3** (2认同)

小智 25

我遇到了同样的问题,我通过这样做解决了

composer install --ignore-platform-reqs
Run Code Online (Sandbox Code Playgroud)

  • 有什么解释吗? (4认同)

Amr*_*man 7

也在运行 composer install/update 或安装新包时添加

--ignore-platform-reqs
Run Code Online (Sandbox Code Playgroud)

在命令末尾,同时为不同环境成功添加/安装。