web-dev-qa-db-fra.com

Installation de Php-intl sur XAMPP

J'ai besoin d'utiliser l'extension intl sur mon mac avec XAMPP.

J'ai donc suivi ces liens:

Installation Php-intl sur XAMPP pour Mac Lion 10.8

http://lvarayut.blogspot.it/2013/09/installing-intl-extension-in-xampp.html

Je redémarre toujours mon serveur Apache mais l'extension n'est pas installée. Parce que si je lance:

php -m | grep intl #should return 'intl'

retour vide

La commande que je ne peux pas lancer sans elle est pour composer et cakephp comme ceci:

composer create-project --prefer-dist -s dev cakephp/app cakephp3

Renvoyez-moi cette erreur:

Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for cakephp/cakephp 3.0.*-dev -> satisfiable by cakephp/cakephp[3.0.x-dev].
    - cakephp/cakephp 3.0.x-dev requires ext-intl * -> the requested PHP extension intl is missing from your system.
  Problem 2
    - cakephp/cakephp 3.0.x-dev requires ext-intl * -> the requested PHP extension intl is missing from your system.
    - cakephp/bake dev-master requires cakephp/cakephp 3.0.x-dev -> satisfiable by cakephp/cakephp[3.0.x-dev].
    - Installation request for cakephp/bake dev-master -> satisfiable by cakephp/bake[dev-master].

J'ai donc besoin de résoudre le problème d'ext-intl avec l'extension intl.

Quelqu'un peut-il m'aider avec ce problème? Comment installer cette extension?

Merci

15

Ces étapes ci-dessous m'ont aidé, juste au cas où vous utilisez OSX

Étapes de http://www.phpzce.com/blog/view/15/installing-intl-package-on-your-mac-with-xampp

  1. Vérifiez quel chemin php est défini, c'est-à-dire.

    root$: which php
    
  2. Si vous utilisez xampp sur votre Mac, cela devrait être

    /Applications/XAMPP/xamppfiles/bin/php 
    

    mais si c'est

    /usr/bin/php 
    

    vous devez changer votre php OSx

    root$: PATH="/Applications/XAMPP/xamppfiles/bin:${PATH}" 
    
  3. Installer icu4c

    root$: brew install icu4c 
    
  4. Installer Intl via PECL

    root$: Sudo pecl update-channels 
    root$: Sudo pecl install intl 
    
  5. Vous pouvez vérifier si Intl a été installé avec succès

    root$: php -m | grep intl #should return 'intl' 
    

Terminé

============================

Remarque:

  • De la liste des extensions dans /Applications/XAMPP/xamppfiles/etc/php.ini Ajout/décommentation d'un fichier extension=intl.so ligne. Et redémarrez Apache. Merci @pazhyn

  • Avant d'installer "intl", vous devez installer Autoconf si vous ne l'avez pas installé. Merci @Digant

    • via Homebrew brew install autoconf automake ou
    • en exécutant les commandes ci-dessous

      curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-latest.tar.gz
      tar xzf autoconf-latest.tar.gz
      cd autoconf-*
      ./configure --prefix=/usr/local
      make
      Sudo make install
      cd ..
      rm -r autoconf-*
      
30
Kunal Panchal

J'ai eu des problèmes avec intl lors de l'utilisation de Moodle, que j'ai résolu en procédant comme suit:

  1. Réexécutez le programme d'installation XAMPP ( si vous n'avez pas le programme d'installation à portée de main, téléchargez-le à partir d'ici ) et cochez la case "XAMPP Developer Files" XAMPP installer
  2. Utilisez votre terminal et allez dans le dossier binaire de XAMPP $ cd /Applications/XAMPP/bin
  3. Utilisez le gestionnaire de packages de PHP pour installer intl en exécutant $ Sudo ./pecl install intl Cela devrait compiler certaines choses, et en cas de succès, l'installation devrait se terminer avec:

    Build process completed successfully
    Installing '/Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20131226/intl.so'
    install ok: channel://pecl.php.net/intl-3.0.0
    configuration option "php_ini" is not set to php.ini location
    You should add "extension=intl.so" to php.ini
    
  4. $ cd ../etc Là, vous aurez votre php.ini auquel vous devez ajouter extension=intl.so Sur mon système, j'ai ajouté la ligne après la ligne 959, que vous pouvez trouver en recherchant php_intl
  5. Enfin, redémarrez votre serveur Web Apache à partir de l'interface graphique XAMPP.

J'espère que cela fonctionne pour toi!

13
toldjuuso

J'ai eu le même problème avec XAMPP. J'ai essayé plusieurs réponses mais sans succès. Pourrait résoudre l'abaissement d'une bibliothèque alternative http://php-osx.liip.ch/ . Cette bibliothèque php, vient déjà installée intl et plusieurs autres paquetages. Après le téléchargement est allé à httpd.conf dans xampp et LoadModule php5_module a indiqué ces paquets dans /usr/local/php5/libphp5.so

6