Composer: l'extension PHP demandée ext-intl * est manquante dans votre système

je suis en train d'utiliser composer.json fichier. mais, lorsque j'essaie d'exécuter la commande 'composer install " dans mon path/project/, j'obtiens une erreur:

enter image description here

j'ai déjà configuré mon wamp pour 'extension=php_intl.dll " et copié tous icu*.dll'D:wampbinapacheapache2.2.22bin' à partir de 'D:wampbinphpphp5.3.13 " et qu'il les montre dans phpinfo():

enter image description here

sans copier icu*.dll fonctionne aussi et montrant dans phpinfo();

veuillez me faire savoir si j'ai intl installer sur mon wamp et composer install sur mon pc alors pourquoi j'obtiens cette erreur. vraiment, c'est tellement ennuyeux.

Voici mes coordonnées:

  1. OS: windows 7 (64)
  2. PHP: 5.3.13
  3. Apache: 2.2.22
  4. Compositeur: installé par fichier exécutable
  5. Poire: installé (plus tard)
  6. PHPUnit: installé (plus tard)

mon composer.json est comme ci-dessous:

{
    "name" : "sebastian/money",
    "description" : "Value Object that represents a monetary value (using a currency's smallest unit)",
    "keywords" : ["money"],
    "homepage" : "http://www.github.com/sebastianbergmann/money",
    "license" : "BSD-3-Clause",
    "authors" : [{
            "name" : "Sebastian Bergmann",
            "email" : "sebastian@phpunit.de"
        }
    ],
    "require" : {
        "php" : ">=5.3.3",
        "ext-intl" : "*"
    },
    "require-dev" : {
        "phpunit/phpunit" : "~4.0"
    },
    "autoload" : {
        "classmap" : [
            "src/"
        ]
    },
    "extra" : {
        "branch-alias" : {
            "dev-master" : "1.3.x-dev"
        }
    }
}

Laissez-moi savoir si d'autres détails..

toute rétroaction ou aide serait grandement appréciée.

20
demandé sur Neeraj Singh 2014-03-11 21:22:02

7 réponses

le problème avec wamp est généralement qu'il utilise un php différent.ini pour la ligne de commande php que pour le web / apache php. Vous voyez donc l'extension intl dans phpinfo () dans le navigateur, mais si vous exécutez php -m dans la ligne de commande, vous devriez voir que la liste des extensions n'inclut pas intl.

vous pouvez vérifier en utilisant php -i en haut de la sortie, il devrait vous dire où le fichier ini est chargé de. Assurez-vous d'activer l'extension intl dans ce fichier ini et vous devriez être en bon pour aller.

26
répondu Seldaek 2014-03-12 08:04:03

Pour activer l'extension intl suivez les instructions ci-dessous.

Vous devez activer l'extension en décommentant la ligne suivante extension=php_intl.dll dans la C:\xampp\php\php.fichier ini. Une fois que vous décommentez l'extension=php_intl.dll, puis vous devez redémarrer le serveur apache en utilisant le panneau de contrôle XAMPP.

//about line 998
;extension=php_intl.dll 
change as
extension=php_intl.dll

(Note: php.fichier ini principalement dans le répertoire suivant C:\xampp\php)--2-->

redémarrez xampp

8
répondu matinict 2015-08-12 10:09:46

j'ai rencontré ceci en L'utilisant dans Mac, Je l'ai résolu en utilisant --ignore-platform-reqs option.

composer install --ignore-platform-reqs
5
répondu Sky 2018-03-18 06:16:48

sous linux (Debian Jessie par exemple):

apt-get install php7.0-intl

va faire le travail pour vous en raison créera un simbolic lien.

4
répondu Anibal Marques dev 2018-01-02 22:38:28

Juste décommentez cette ligne (pour la trouver, il suffit de rechercher cette ligne dans l'éditeur):

;extension=php_sockets.dll

(Enlever le point-virgule pour commentaires)

pour moi, pas besoin de redémarrer XAMPP (dans votre cas, WAMP). Mais si ça n'a pas marché, redémarrez-le.

0
répondu MAChitgarha 2017-06-27 14:15:04

c'est une question un peu vieille mais j'avais fait face au même problème sur linux base server lors de l'installation de magento 2.

Quand je suis à la cuisson composer update ou composer install commande de ma racine magento dir. Son tir d'erreur ci-dessous.

Problem 1
    - The requested PHP extension ext-intl * is missing from your system. Install or enable PHP's intl extension.
  Problem 2
    - The requested PHP extension ext-mbstring * is missing from your system. Install or enable PHP's mbstring extension.
  Problem 3
    - Installation request for pelago/emogrifier 0.1.1 -> satisfiable by pelago/emogrifier[v0.1.1].
    - pelago/emogrifier v0.1.1 requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system.
   ...

ensuite, j'ai cherché les extensions intl & intl disponibles, en utilisant les commandes ci-dessous.

yum list php*intl
yum install php-intl.x86_64  

yum list php*mbstring
yum install php-mbstring.x86_64

Et il a fixé le problème.

0
répondu Rohan Patil 2017-07-23 12:02:38

si vous avez cette erreur pendant l'exécution de la commande composer install, ne vous inquiétez pas. Les étapes à suivre et les exigences:

  • Step1: aller dans le dossier du serveur tel que xampp (ou) wampp etc.

  • Step2: ouvrez le dossier php à l'intérieur de celui-ci et allez dans le dossier ext.

  • Step3: si vous trouvez un fichier nommé php_intl.dll pas de problème.

il suffit d'aller à php.fichier ini et de décommenter le ligne

:

;extension=php_intl.dll

À:

extension=php_intl.dll
  • Step4: redémarrez xampp, thats it

Remarque: si vous ne trouvez pas le nom du fichier php_intl.dll, alors vous devez mettre à jour la version PHP.

0
répondu Manojkiran.A 2018-08-29 08:07:17