Composer erfordert phpoffice/phpspreadsheet funktioniert nicht

Lesezeit: 5 Minuten

Benutzer-Avatar
Herr Scf

Ich möchte ein Skript mit dem Paket Phpspreadsheet schreiben. Ich habe keine Erfahrung mit PHP. Ich versuche, die Referenz zu meinem Skript über sudo composer require phpoffice/phpspreadsheet hinzuzufügen. Aber es funktioniert nicht. Ich erhalte die Fehlermeldung: Installation fehlgeschlagen, Composer.json löschen….Wenn Sie keine Ahnung haben, warum es nicht funktioniert. Irgendeine Idee?

Detaillierter Fehler:

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.

  • Sie sollten wahrscheinlich nicht verwenden sudo. Normalerweise werden Composer-Abhängigkeiten im Projektbereich und nicht als Superuser installiert. Aber wenn Sie in der Composer-Ausgabe nach oben scrollen, sollten mehr Informationen angezeigt werden. Ich habe es gerade probiert und hinbekommen phpoffice/phpspreadsheet 1.0.0 erfordert ext-zip * -> die angeforderte PHP-Erweiterung zip fehlt auf Ihrem System Das heißt, ich habe die Zip-Erweiterung nicht installiert. Möglicherweise haben Sie dieses Problem oder andere ähnliche Probleme.

    – Michael Berkowski

    13. Januar 2018 um 14:24 Uhr

  • Ich verwende die Aussage sudo Composer require phpoffice/phpspreadsheet

    – Herr Scf

    13. Januar 2018 um 14:34 Uhr

  • Mein Punkt ist, dass Sie wahrscheinlich nur verwenden sollten composer require phpoffice/phpspreadsheet ohne sudo. Tun Sie dies und posten Sie die vollständige Fehlerausgabe. Es sollte mehr als nur “Installation fehlgeschlagen” liefern.

    – Michael Berkowski

    13. Januar 2018 um 14:51 Uhr

  • Ja, ich bekomme: failed to open stream: Permission denied

    – Herr Scf

    13. Januar 2018 um 14:56 Uhr

  • Okay, dann haben Sie wahrscheinlich keinen Schreibzugriff, wo Sie versuchen, dies zu installieren und sudo ist notwendig. Also verwenden sudo aber fügen Sie die vollständige Fehlerausgabe hinzu (bearbeiten Sie Ihren ursprünglichen Beitrag, anstatt ihn zu kommentieren).

    – Michael Berkowski

    13. Januar 2018 um 15:03 Uhr


Also sollte ich installieren

sudo apt install php-xml

sudo apt install php7.0-gd

sudo apt install php7.0-mbstring

sudo apt install php-zip

  • Für Kohärenz, sudo apt install php7.0-xml php7.0-gd php7.0-mbstring php7.0-zip

    – Nikolaus

    28. Mai 2018 um 9:15 Uhr

  • Hat jemand die Zip-Erweiterung für installieren können php7.2 ? heißt es weiter E: Paket php7.2-zip kann nicht gefunden werden E: Konnte kein Paket mit Regex ‘php7.2-zip’ finden Ich habe viele Variationen ausprobiert, aber keine funktioniert, ich habe PHP-Version 7.2.17-1+ubuntu14.04.1+deb.sury.org+3

    – Muhammad Omer Aslam

    12. September 2019 um 8:01 Uhr


  • Ich danke dir sehr! das hat gut funktioniert. Seit meiner war php7.2 Ich habe die geändertphp7.0 zu php7.2 und die anderen beiden gleich. dann hat es perfekt geklappt!

    – Kidus Tekeste

    18. April 2020 um 6:18 Uhr


  • Geben Sie besser die PHP-Version für jeden Befehl an (php7.3-xml, php7.3-gd, php7.3-mbstring, php7.3-zip).

    – Akshay K. Nair

    28. Januar 2021 um 11:11 Uhr

  • Diese Befehle sind auch mein Problem gelöst. Ich danke dir sehr.

    – Enver

    22. April 2021 um 10:35 Uhr

Ich hatte das gleiche Problem, ich behebe es, indem ich dies tue

composer install --ignore-platform-reqs

  • Irgendeine Erklärung?

    – PriyankMotivaras

    19. August 2021 um 19:59 Uhr

auch während der Ausführung von Composer install/update oder Installation neuer Paketzusätze

--ignore-platform-reqs

am Ende des Befehls, während das Hinzufügen/Installieren für verschiedene Umgebungen erfolgreich ist.

In Cento:

sudo yum install gd gd-devel php-gd

sudo apt installiere php-xml

sudo apt installiere php7.0-gd

sudo apt install php7.0-mbstring

sudo apt installiere php-zip

  • In meinem Fall fehlte mir php7.3-zip, nach der Installation verschwand der Fehler

    – Abgaben

    27. Oktober 2020 um 20:10 Uhr

Benutzer-Avatar
jhoskins98

Bitte lesen Sie die Fehlermeldung “requires ext-dom”. Es beschwert sich über ein fehlendes Paket oder in diesem Fall eine PHP-Erweiterung. Wenn Sie ein Paket nicht installieren können, können Sie sich im Allgemeinen die erforderlichen Pakete in der Datei composer.json ansehen, um die vollständige Liste anzuzeigen.

phpoffice (in diesem Fall 1.1.0) erfordert Folgendes:

   "require": {
        "php": "^5.6|^7.0",
        "ext-ctype": "*",
        "ext-dom": "*",
        "ext-gd": "*",
        "ext-iconv": "*",
        "ext-libxml": "*",
        "ext-mbstring": "*",
        "ext-SimpleXML": "*",
        "ext-xml": "*",
        "ext-xmlreader": "*",
        "ext-xmlwriter": "*",
        "ext-zip": "*",
        "ext-zlib": "*",
        "psr/simple-cache": "^1.0"
    },
    "require-dev": {
        "tecnickcom/tcpdf": "^6.2",
        "squizlabs/php_codesniffer": "^2.7",
        "phpunit/phpunit": "^5.7",
        "dompdf/dompdf": "^0.8.0",
        "mpdf/mpdf": "^7.0.0",
        "jpgraph/jpgraph": "^4.0",
        "friendsofphp/php-cs-fixer": "@stable"
    },

  • In meinem Fall fehlte mir php7.3-zip, nach der Installation verschwand der Fehler

    – Abgaben

    27. Oktober 2020 um 20:10 Uhr

Benutzer-Avatar
tomerpazifik

Die Fehlermeldungsanzeige fehlt. Ich hatte das gleiche Problem, beheben Sie es, indem Sie dies tun. Bitte lesen Sie die Fehlermeldung “requires ext-dom”.

Bitte installieren Sie php7.1-dom

In meinem Fall ist PHP 7.1 unten, was ich getan habe und jetzt funktioniert.

sudo apt-get install php7.1 php7.1-cli php7.1-common php7.1-json php7.1-opcache php7.1-mysql php7.1-mbstring php7.1-mcrypt php7.1-zip php7. 1-fpm sudo apt install php-xml php7.1-gd php7.1-dom

1205800cookie-checkComposer erfordert phpoffice/phpspreadsheet funktioniert nicht

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy