J'essaye d'exécuter composer update
et j'obtiens les erreurs suivantes:
Problem 1
- The requested PHP extension ext-Zip * is missing from your system. Install or enable PHP's Zip extension.
Problem 2
- maatwebsite/Excel 3.1.10 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.11 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.12 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.13 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.14 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.15 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.16 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.17 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.7 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.8 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.9 requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.x-dev requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.2.x-dev requires phpoffice/phpspreadsheet ^1.6 -> satisfiable by phpoffice/phpspreadsheet[1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.0 requires phpoffice/phpspreadsheet ^1.4 -> satisfiable by phpoffice/phpspreadsheet[1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.1 requires phpoffice/phpspreadsheet ^1.4 -> satisfiable by phpoffice/phpspreadsheet[1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.2 requires phpoffice/phpspreadsheet ^1.4 -> satisfiable by phpoffice/phpspreadsheet[1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.3 requires phpoffice/phpspreadsheet ^1.4 -> satisfiable by phpoffice/phpspreadsheet[1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.4 requires phpoffice/phpspreadsheet ^1.4 -> satisfiable by phpoffice/phpspreadsheet[1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.5 requires phpoffice/phpspreadsheet ^1.4 -> satisfiable by phpoffice/phpspreadsheet[1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- maatwebsite/Excel 3.1.6 requires phpoffice/phpspreadsheet ^1.4 -> satisfiable by phpoffice/phpspreadsheet[1.4.0, 1.4.1, 1.5.0, 1.5.1, 1.5.2, 1.6.0, 1.7.0, 1.8.0, 1.8.1, 1.8.2, 1.9.0].
- phpoffice/phpspreadsheet 1.9.0 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.8.2 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.8.1 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.8.0 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.7.0 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.6.0 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.5.2 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.5.1 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.5.0 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.4.1 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- phpoffice/phpspreadsheet 1.4.0 requires ext-Zip * -> the requested PHP extension Zip is missing from your system.
- Installation request for maatwebsite/Excel ^3.1.0 -> satisfiable by maatwebsite/Excel[3.1.0, 3.1.1, 3.1.10, 3.1.11, 3.1.12, 3.1.13, 3.1.14, 3.1.15, 3.1.16, 3.1.17, 3.1.2, 3.1.3, 3.1.4, 3.1.5, 3.1.6, 3.1.7, 3.1.8, 3.1.9, 3.1.x-dev, 3.2.x-dev].
lors de l'exécution composer update
Du jour au lendemain, j'ai fait l'erreur de ma vie et j'ai autorisé mon Mac à mettre à jour automatiquement le système d'exploitation, je suis donc maintenant dans macOS Catalina.
J'ai essayé d'ajouter
"require": {
"ext-Zip": "*",
}
à mon composer.json..mais ce n'est pas télécharger cette extension.
J'ai eu le même problème après avoir mis à jour mon Mac vers Catalina. Voici ce qui a fonctionné pour moi.
brew update
brew install [email protected]
brew link [email protected]
Rechargez ensuite votre console.
Il installera php 7.3.10 avec le module Zip. Vous pouvez utiliser php -v pour vérifier la version et php -m pour les modules.
La commande suivante a résolu le problème sur macOS Catalina
brew link [email protected] --force
J'ai eu des problèmes avec python pendant le brew install php
.
/usr/local/Frameworks
n'existait pas, j'ai donc dû le créer: Sudo mkdir /usr/local/Frameworks
cd /usr/local/
Ensuite, je devais le montrer: Sudo chown -R myuser:admin Frameworks
J'ai basé les paramètres d'autorisation sur le reste des dossiers dans /usr/local
.
Ensuite, je pourrais exécuter brew link python
. Puis j'ai couru brew install php
encore une fois et c'est terminé.
php -v
me donne maintenant php 7.3.10, avant c'était php 7.3.18 je pense.
Si le lien de brassage ne fonctionne pas pour vous, vérifiez votre version php installée par:
ls /usr/local/opt/php*
Ici, vous verrez une version en tant que telle:
/usr/local/opt/[email protected]/bin:$PATH
Devrait vous donner une sortie comme:
/usr/local/opt/[email protected]:
INSTALL_RECEIPT.json include
LICENSE lib
NEWS pecl
README.md sbin
bin share
[email protected]
Maintenant, il vous suffit de lier cela à votre $ PATH, ce qui peut être fait comme:
echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/usr/local/opt/[email protected]/sbin:$PATH"' >> ~/.zshrc
source ~/.zshrc
Remarque: j'utilise .zshrc car il s'agit de la configuration de mon terminal. Si le vôtre est bash, utilisez en conséquence.
Vous pouvez vérifier quelle version de php est maintenant liée à votre MacOS en exécutant:
which php
Cela devrait vous donner une sortie de:
/usr/local/opt/[email protected]/bin/php
C'est tout. Maintenant, si vous essayez la mise à jour composer, cela ne devrait pas vous poser de problème d'extension.
Source (en partie): https://medium.com/@jjdanek/installing-php-extensions-on-mac-after-homebrew-acfddd6be602
Le 10 mars 2020, ça marche pour moi:
brew install php
C'est la seule commande sur PHP qui fonctionne. Donc, je pense que les commandes affichées dans les derniers messages sont obsolètes.
Au lieu de forcer la liaison, vous pouvez également résoudre le problème dans MacOS Catalina
en ajoutant le chemin binaire php à votre profil bash par exemple:
echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.bash_profile
echo 'export PATH="/usr/local/opt/[email protected]/sbinbin:$PATH"' >> ~/.bash_profile
Cela a fonctionné pour moi
brew update brew install [email protected] brew link [email protected] brew link [email protected] --force
J'espère que ça aide
Dans mon cas, je devais simplement
brew link --overwrite php