Mir wurde von PHPStorm gesagt, dass ich für den Composer Ext-Zip benötigen muss, aber dieser Befehl schlägt fehl …
sagt PHPStorm
Der Befehl, den ich erteile, ist
composer require ext-zip
ergibt sich
Your requirements could not be resolved to an installable set of packages.
und
Installation failed, reverting ./composer.json to its original content.
Warum denken Sie, dass Sie es mit Composer installieren sollten? Das ist eine PHP-Erweiterung, die Sie entweder über das Paketsystem Ihres Betriebssystems oder durch manuelles Herunterladen installieren müssen
– Nico Haase
20. Mai 2019 um 11:21 Uhr
Ich habe die Frage mit einem Screenshot aus meiner IDE aktualisiert
– Jeffrey L. Roberts
20. Mai 2019 um 11:28 Uhr
Und dennoch darf diese Erweiterung nicht mit Composer installiert werden
– Nico Haase
20. Mai 2019 um 11:31 Uhr
Ich habe die Frage mit einem Screenshot mit mehr Details aktualisiert … Wenn Composer nicht installiert werden soll, soll Composer die Benutzer der Anwendung vielleicht darüber informieren, dass eine Erweiterung erforderlich ist?
– Jeffrey L. Roberts
20. Mai 2019 um 11:33 Uhr
Nun, es fehlt nicht, denke ich, es ist nur Ihre IDE sagt, dass es nicht drin ist composer.json aber es ist ein Teil der PHP-Erweiterung. Haben Sie einen Fehler beim Ausführen von Code? Wenn ja, teilen Sie es uns bitte mit.
– Karol Gasienica
20. Mai 2019 um 11:37 Uhr
Yevhen Kuzmenko
Lösung Nr. 1 – fügen Sie ext-zip zu Ihrem erforderlichen Abschnitt von composer.json hinzu:
{
"require" : {
"ext-zip": "*"
}
}
Lösung Nr. 2 – php-zip-Erweiterung installieren:
Fenster:
Kommentieren Sie diese Zeile in Ihrer php.ini aus
;extension=php_zip.dll
Linux:
sudo apt-get installiere php-zip
oder
sudo apt-get install php7.0-zip (stellen Sie sicher, dass Sie IHRE PHP-Version eingegeben haben, Sie können Ihre Version überprüfen, indem Sie den Befehl php -v ausführen)
Anschließend müssen Sie Ihren Webserver neu starten.
sudo-Dienst apache2 neu starten
Können Sie weiter erklären, wie das die gegebene Nachricht löst? Die IDE gibt offensichtlich eine gewisse Verbindung zu composer.json
– Nico Haase
20. Mai 2019 um 11:41 Uhr
Und kannst du welche hinzufügen Erläuterung das erklärt, warum die Nachricht ursprünglich aufgetaucht ist und was Ihr Code dagegen tut?
– Nico Haase
20. Mai 2019 um 12:02 Uhr
Beantwortet von stackoverflow.com/a/56220471/38408, die Ext-Abhängigkeiten in Composer sind Systemanforderungen, die Composer validieren, aber nicht verwalten kann. Stattdessen werden andere Serverkonfigurationsmechanismen verwendet, um den Server mit diesen Paketen einzurichten.
– Grauseite
20. Mai 2019 um 21:54 Uhr
Wenn Ihr Code OK läuft, haben Sie die Zip-Erweiterung bereits auf Ihrem Computer installiert. PHPStorm fügt diesen Vorschlag hinzu, um sicherzustellen, dass überall dort, wo das Projekt bereitgestellt wird, auch die richtigen Erweiterungen vorhanden sind.
Manuelles Hinzufügen der Zeile in Ihrer composer.json-Datei (require Block) "ext-zip": "*", (und andere, die es vorschlagen kann, wie z ext-apc, ext-redis und ext-jsonsowie alle anderen, die Sie möglicherweise verwenden) stellen sicher, dass Composer bei der Bereitstellung auch prüfen kann, ob die entsprechenden zusätzlichen Elemente installiert sind.
Es ist jedoch nur eine Warnung, und Sie können sie ignorieren – oder Sie können Composer erlauben, sicherzustellen, dass Ihre Server so eingerichtet sind, wie sie zum Ausführen Ihres Codes benötigt werden, und Dinge mit Zip-Dateien tun. Wenn auf Ihrem Server kein ext-zip installiert ist, composer install würde sich beschweren und aufhören – Probleme später zu speichern, wenn Sie feststellen, dass Code ohne die Zip-Erweiterung fehlschlägt, et al.
sicher, aber was ist, wenn ich mich nur darüber ärgere, dass der gesamte Code als eine Art Fehler in der IDEA markiert ist, ich möchte ihn nicht sehen oder composer.json nur deswegen ändern 🙂
– OZZIE
13. Dezember 2019 um 11:58 Uhr
Der angegebene Hinweis stammt von PhpStorm, nicht vom Komponisten selbst: Ihre IDE hat festgestellt, dass Ihr Code eine Methode verwendet (oder in diesem Fall: die ZipArchive Klasse), die nur verfügbar ist, wenn die ZIP-Erweiterung aktiviert ist. Aber dein composer.json enthielt diese Anforderung bisher nicht.
Daher fordert PhpStorm Sie auf, diese Anforderung zur JSON-Datei hinzuzufügen, um die Anforderungen zum Ausführen Ihres Codes präziser zu machen. Wie Sie diese Anforderung lösen, liegt bei Ihnen: Der beste Weg wäre, diese Erweiterung zu installieren, aber das liegt außerhalb des Bereichs von Composer
Warum denken Sie, dass Sie es mit Composer installieren sollten? Das ist eine PHP-Erweiterung, die Sie entweder über das Paketsystem Ihres Betriebssystems oder durch manuelles Herunterladen installieren müssen
– Nico Haase
20. Mai 2019 um 11:21 Uhr
Ich habe die Frage mit einem Screenshot aus meiner IDE aktualisiert
– Jeffrey L. Roberts
20. Mai 2019 um 11:28 Uhr
Und dennoch darf diese Erweiterung nicht mit Composer installiert werden
– Nico Haase
20. Mai 2019 um 11:31 Uhr
Ich habe die Frage mit einem Screenshot mit mehr Details aktualisiert … Wenn Composer nicht installiert werden soll, soll Composer die Benutzer der Anwendung vielleicht darüber informieren, dass eine Erweiterung erforderlich ist?
– Jeffrey L. Roberts
20. Mai 2019 um 11:33 Uhr
Nun, es fehlt nicht, denke ich, es ist nur Ihre IDE sagt, dass es nicht drin ist
composer.json
aber es ist ein Teil der PHP-Erweiterung. Haben Sie einen Fehler beim Ausführen von Code? Wenn ja, teilen Sie es uns bitte mit.– Karol Gasienica
20. Mai 2019 um 11:37 Uhr