web-dev-qa-db-fra.com

La demande PHP extension intl est absent de votre système (SonataAdminBundle) dans Symfony2

J'essaie d'installer le bac à sable mais j'obtiens l'erreur suivante de composer:

Chargement des référentiels Composer avec les informations sur le paquet Installation Dépendances du fichier de verrouillage Vos exigences n'ont pas pu être résolues en un ensemble de paquets installable.

Problème 1

- Installation request for sonata-project/intl-bundle 2.1.0 -> satisfiable by sonata-project/intl-bundle 2.1.0.`

- sonata-project/intl-bundle 2.1.0 requires ext-intl * -> the requested PHP extension intl is missing from your system.`

Problème 2

- sonata-project/intl-bundle 2.1.0 requires ext-intl * -> the requested PHP extension intl is missing from your system.`

- sonata-project/news-bundle 2.1.x-dev requires sonata-project/intl-bundle 2.1.* -> satisfiable by sonata-project/intl-bundle 2.1.0.
- Installation request for sonata-project/news-bundle 2.1.
12
Krishna Ghodke

J'ai eu le même problème lors de l'installation de la nouvelle version de Magento 2.0. Après des tentatives et des essais différents, j'ai réussi à le résoudre en procédant comme suit:

J'ai copié tous les fichiers icu * du répertoire php vers le répertoire Appache, et cela a fonctionné.

Répertoire php: 

WAMP\bin\php\php5.5.12

Répertoire Appache: 

WAMP\bin\Apache\apache2.4.9

Assurez-vous de ne pas commenter la ligne suivante du fichier php.ini:

extension = ext/php_intl.dll

8
Sohaib Afzal

Comme @Hugehornet l'a souligné - vous devez activer cette extension dans php.ini en décommentant cette ligne: extension = ext/php_intl.dll

Si vous utilisez l'interface de wamp pour cette tâche, vous mettez à jour le fichier php.ini situé dans le répertoire d'Apache. 

Exemple: C:\wamp\bin\Apache\Apache2.4.4\bin\php.ini

Composer utilise celui qui se trouve dans le répertoire d'installation du php.

Exemple: C:\wamp\bin\php\php5.4.12\php.ini

Vous devez éditer manuellement ce dernier et redémarrer le serveur wamp.

9
eroteev

Utilisateur Linux 

yum install php-intl
9
Dharmendra Singh

Vous devez activer l'extension intl dans php juste comme le dit l'erreur . Dans votre fichier php.ini, décommentez la ligne extension=ext/php_intl.dll ou quelque chose comme ça.

Edit: notez que si vous utilisez wamp ou quelque chose comme cela, vous devez être conscient du fait que le fichier php.ini de la configuration de wamp n'est pas nécessairement celui utilisé par le compositeur.

7
Hugehornet

Tout d’abord, assurez-vous que votre serveur est de construction isung x86 (intl ne fonctionne pas avec x64), puis:

  • activer l'extension intl directement dans php.ini
  • copier tout le répertoire icu*.dll du répertoire php dans le répertoire Apache
  • assurez-vous que votre console utilise le même dossier php que celui que vous venez de configurer source .

Dans mon système Windows, j'ai deux fichiers php.ini dans les chemins suivants:

C:\wamp\bin\php\phpx.y.z
C:\wamp\bin\Apache\Apachex.y.z\bin

Je ne sais pas lequel est sur votre chemin. Assurez-vous simplement d'ajouter l'extension dans les deux pour éliminer tout doute.

3
user4623162

Je suis sous Mac OS X Yosemite et je corrige cette erreur

L'extension PHP demandée mcrypt est absente de votre système  

en lançant les commandes suivantes: 

brew update
brew upgrade
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
brew install php54-mcrypt
2
kyo

Si intl a déjà été activé et que cela ne fonctionne pas, ajoutez votre répertoire PHP dans la variable d'environnement Path, puis redémarrez votre serveur ..__ (par exemple, C:\Program Files\wamp\bin\php\phpX.XXX.XXX pour wamp)

Ça a marché pour moi!

1
quent