L’extension PHP intl ne fonctionne pas

J’ai installé l’extension intl via PECL sur Debian Squeeze. Mais quand je mets extension=intl.so dans mon fichier php.ini et redémarre Apache, il charge le CP à environ 99% et rien ne fonctionne. La seule façon de faire fonctionner le serveur à nouveau est de supprimer la ligne extension=intl.so du fichier php.ini. Pourquoi?

Le journal des erreurs Apache est:

[Mer. Nov. 28 23:09:59 2012] [notice] mécanisme suEXEC activé (wrapper: / usr / lib / apache2 / suexec) Avertissement de PHP: échec de l’enregistrement de la fonction – nom dupliqué – idn_to_ascii dans Unknown on line 0 failed – nom dupliqué – idn_to_utf8 in Unknown sur la ligne 0 PHP Attention: idn: impossible d’enregistrer des fonctions, impossible de charger dans Unknown sur la ligne 0

Les noms de fonctions doivent être uniques pour des raisons évidentes.

L’extension (recommandée) intl fournit les fonctions idn_to_ascii et idn_to_utf8 (ainsi que d’autres fonctions utiles), ainsi que l’extension idn ( source )

idn est en (début) beta depuis 2009 et n’est plus développé.

Comment puis-je résoudre ce problème?

Ce que vous devez faire est de désinstaller votre extension idn

 apt-get remove php-pecl-idn 

ou (dépend de la façon dont cela a été installé)

 pecl uninstall idn 

ou simplement commenter l’extension dans votre config

 ; extension=idn.so 

puis redémarrez votre apache