Maison >développement back-end >tutoriel php >Comment remplacer les trémas par des équivalents ASCII dans les chaînes UTF-8 ?
Conversion des trémas en équivalents ASCII dans les chaînes UTF-8
Problème :
Remplacer le spécial caractères, tels que les trémas, dans une chaîne UTF-8 avec leurs 7 bits les plus proches Équivalent ASCII. Par exemple, "lärm" devrait devenir "larm" et "andré" devrait devenir "andre".
Solution :
Utilisation de utf8_decode() et strtr(), comme le démontre l'extrait de code donné, est une solution courante. Cependant, si votre fichier source est enregistré au format UTF-8 et que vous ne pouvez pas saisir de caractères ISO-8859-15, une approche plus élégante est disponible.
La fonction iconv() peut être utilisée pour effectuer une conversion de jeu de caractères. En spécifiant "ascii//TRANSLIT" comme jeu de caractères cible, les trémas seront automatiquement convertis en leurs équivalents ASCII :
echo iconv("utf-8","ascii//TRANSLIT",$input);
Exemple étendu :
Pour illustrer l'utilisation de iconv(), considérons le code suivant :
$input = "lärm andré"; $output = iconv("utf-8","ascii//TRANSLIT",$input); echo $output; // Output: larm andre
Ce code convertit tous trémas dans la chaîne d'entrée vers leurs équivalents ASCII.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!