Question

Comme nous tous maintenant, la gestion des chaînes multi-octets est pas facile en PHP. Par exemple, je veux obtenir la longueur de la chaîne suivante: ä

strlen('ä'); // 2, because ä equals 2 bytes
mb_strlen('ä', 'UTF-8'); // 1
iconv_strlen('ä', 'UTF-8'); // 1

Quelles fonctions dois-je utiliser? Le MB_ * ou iconv_ *? Pourquoi? Considérant que le codage ne peut être limitée à UTF-8.

Thx à l'avance!

Était-ce utile?

La solution

Jetez un oeil à cette présentation Powerpoint:

http://www.nyphp.org/content/ présentations / Smallworld / April2006-nyphp-Presentation.ppt

En bref: Iconv plus encodages, mais est moins portable.

De la présentation:

  

PHP supporte plusieurs octets en deux   extensions: iconv et mbstring

     
      
  • iconv utilise une bibliothèque externe (prend en charge plus encodages mais moins   portable)
  •   
  • mbstring a la bibliothèque fournie avec PHP (moins encodages mais plus   portable)
  •   
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top