J'essaie de localiser php_intl.dll
et de l'installer.
Est-ce que quelqu'un a des conseils?
Les paquets sur http://windows.php.net/download/ contiennent tous le php\_intl.dll
qui se trouve dans le sous-répertoire ext/
.
Tout ce que vous avez à faire est de vérifier si votre extension_dir pointe vers le bon répertoire et d’ajouter (ou de ne pas commenter) la directive extension=php\_intl.dll
.
Pour que l'extension php_intl.dll
fonctionne correctement, vous devez disposer les fichiers suivants dans un dossier de votre PATH
:
icudt36.dll
icuin36.dll
icuio36.dll
icule36.dll
iculx36.dll
icutu36.dll
icuuc36.dll
Par défaut, ils se trouvent dans votre répertoire PHP, mais ce répertoire ne se trouve pas nécessairement dans votre PATH
(ce n'était pas pour moi, avec xampp)
Cela doit être dans votre chemin global, pas seulement le chemin de votre utilisateur. Pour définir le chemin global, allez à info système (windows key + PAUSE), puis Paramètres système avancés (Vista +) ou Avancé (XP), cliquez sur le bouton "Variables d’environnement" et ajoutez le répertoire approprié à la variable PATH
dans la liste des variables système.
XAMPP 1.8.3-0 et PHP 5.5.0 sont installés.
1) edit php.ini:
de
;extension=php_intl.dll
à
extension=php_intl.dll
Remarque: Après la modification, vous devez enregistrer le fichier (php.ini) et redémarrer le serveur Apache.
2) Copiez simplement tous les fichiers icu * * * * .dll files:
de
C:\xampp\php
à
C:\xampp\Apache\bin
Alors l'extension intl fonctionne !!!
Avait le même problème ... J'ai trouvé les fichiers nécessaires en recherchant icu * * .dll sur mon lecteur et trouvé ceux énumérés ci-dessus, mais avec 46 au lieu de 36 dans le dossier php. Je les ai copiés dans le fichier Apache/bin et j'ai essayé de démarrer Apache et le processus a finalement commencé. Sur la page Vérifications du serveur, il est maintenant passé du contrôle jaune au vert OK. J'espère que cela t'aides.
Si vous lisez le message d'erreur, "icuuc36.dll" est manquant ... Le problème est que vous n'avez pas le répertoire PHP dans votre PATH, ou vous pouvez copier tous les fichiers "intl" du répertoire php vers Apache\bin directory . Ce sont: Icudt36.dll Icuin36.dll Icuio36.dll Icule36.dll Iculx36.dll Icutu36.dll icuuc36.dll
J'ai PHP 5.3.1 et Apache
Lorsque j'ajoute le extension=php_intl.dll
à php.ini et que je redémarre Apache, une alerte s'affiche: "l'opération demandée a échoué".
Et cette erreur sur Event Monitor:
Faulting application name: httpd.exe, version: 2.2.14.0, time stamp: 0x4ac181d6
Faulting module name: php5ts.dll, version: 5.3.1.0, time stamp: 0x4b051b35
Exception code: 0xc0000005
Le problème était que certaines DLL comme icudt36.dll étaient manquantes (remarqué avec sysinternals ProcMon), j'ai téléchargé la version PHP 5.3.1 Zip et extrait toutes les DLL dans le dossier PHP. Cela a résolu le problème.
Pour WampServer 2.5 ( Apache 2.4.9 et PHP 5.5.12 ):
Dans par défaut J'ai eu php_intl
enabled (vous pouvez l’activer quand vous left click on the wamp icon in the system tray > PHP > PHP extensions
et vérifier s’il est marqué)
Pour que cela fonctionne correctement, j'ai dû copier :
C:\wamp\bin\php\php5.5.12\icu ** 51.dll
(total 8 fichiers)
à
C:\wamp\bin\Apache\apache2.4.9\bin
Ensuite, redémarrez le wamp et tout allait bien.
J'ai IIS 7 et PHP installé à l'aide de Microsoft Web Platform Installer sous Windows 7. Sous IIS, accédez à PHP dans la page principale des paramètres -> Extensions PHP -> Activer ou Désactiver une extension . L'extension Intl est désactivée par défaut.
J'espère que ça aide
J'ai résolu ce problème en ajoutant le répertoire PHP à la variable PATH . Je viens d'ajouter le code ;C:\xampp\php
à la variable Path
dans les variables d'environnement Windows.
Lorsque j'ai rencontré ce problème, le problème a été résolu en utilisant les étapes mentionnées ci-dessous:
Éditez php.ini:
Faire
; extension = php_intl.dll à
extension = php_intl.dll Copiez simplement tous les fichiers icu * * * * .dll (tous les fichiers icu ayant l’extension dll) de
C:\xampp\php à C:\xampp\Apache\bin
Aussi, si vous avez l'erreur de fichier manquante msvcp110.dll. Vous devez télécharger le bon fichier .dll ou simplement aller ici http://www.Microsoft.com/es-es/download/confirmation.aspx?id=30679 et installer vcredist_x64.exe et vcredist_x86.exe.
Maintenant, l'extension intl devrait fonctionner :-)
Si vous avez l'erreur de fichier manquante msvcp110.dll. Vous devez télécharger le bon fichier .dll ou simplement aller ici http://www.Microsoft.com/es-es/download/confirmation.aspx?id=30679 et installer vcredist_x64.exe et vcredist_x86.exe, cela a fonctionné pour moi.
Vous pouvez taper cette commande dans le terminal: Sudo apt-get install php-intl
Il y a une meilleure façon de faire cela.
J'avais le même genre de problème avec les extensions ldap, intl, curl php. J'ai résolu ces problèmes par les moyens suivants:
Au début, vous devez vérifier si ces extensions ont été activées dans le fichier php.ini en supprimant le point-virgule (;) devant les lignes suivantes:
;extension=php_intl.dll
;extension=php_ldap.dll
;extension=php_curl.dll
Vous pouvez maintenant charger directement les fichiers dll nécessaires (par exemple, libeay32, libssh2, ssleay32, icu ** .dll) depuis votre fichier httpd.conf (fichier de configuration Apache). Vous n'avez pas besoin de faire autre chose, comme les copier dans le répertoire bin d'Apache ou dans le répertoire ext de php. Il suffit de les ajouter directement dans le fichier httpd.conf de votre Apache.
Veuillez noter que l'exemple suivant est pour la version 5.5.x de PHP.
LoadFile "C:/php/icudt51.dll"
LoadFile "C:/php/icuin51.dll"
LoadFile "C:/php/icuio51.dll"
LoadFile "C:/php/icule51.dll"
LoadFile "C:/php/iculx51.dll"
LoadFile "C:/php/icutest51.dll"
LoadFile "C:/php/icutu51.dll"
LoadFile "C:/php/icuuc51.dll"
LoadFile "C:/php/libeay32.dll"
LoadFile "C:/php/libssh2.dll"
LoadFile "C:/php/ssleay32.dll"
C'est tout. Maintenant, redémarrez votre Apache ou Wamp et vous êtes prêt à partir.
J'avais du mal à utiliser intl avec PHP 7.1.7 et PhpStorm sous Windows 10. D'après d'autres réponses, je pourrais dire qu'il s'agissait d'un problème de dépendance PATH/DLL, mais je n'arrivais pas à trouver tous les fichiers requis même après l’installation ou la réinstallation de Visual C++ Redistributable.
J'ai finalement recherché vcr * .dll sur mon lecteur C: et trouvé une copie de vcruntime140.dll dans mon répertoire C:\Program Files\Mozilla Firefox
. Donc, en plus d’apporter ces modifications au fichier php.ini:
extension_dir = "ext"
extension=php_intl.dll
J'ai également défini mon chemin d'exécution PATH sur UNIQUEMENT le répertoire PHP (dans mon cas, C:\Program Files\PHP\7.1.7
) et le répertoire Firefox (ci-dessus) et cela a finalement fonctionné! Je sais qu'il faut plus que vcruntime140.dll, mais les autres DLL requises doivent également figurer dans le répertoire FF (il y en a quelques dizaines mais je n'ai pas cherché à savoir lesquelles sont essentielles).
Dans mon panneau de configuration xampp, cliquez sur config pour ouvrir le fichier php.ini.
retirer ; dans
; extension = php_intl.dll
Puis redémarrez Apache.
/ Digger ici /
Déplacer les fichiers icu*****.dll
vers /ext/
semble également résoudre le problème.
(Si vous avez bien sûr spécifié le répertoire des extensions)
Dans mon cas, ajouter le répertoire PHP à PATH dans un environnement utilisateur ne fonctionnait pas. Après quelques tests, j'ai trouvé qu'il devrait être ajouté à PATH du système (je ne sais pas comment s'appelle cette partie des fenêtres de paramétrage du système, couse j'ai des fenêtres polonaises).
Le paquet est déjà inclus dans les extensions pourPHP7.2 et supérieur et il vous suffit de supprimer la mise en commentaire de la ligne suivante dans php.ini
extension=intl