Maison >développement back-end >tutoriel php >fonction iconv en PHP pour convertir l'encodage, tel que UTF-8 en GB2312
Cet article présente la fonction iconv en PHP pour convertir l'encodage, tel que UTF-8 en GB2312. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
Récemment. , lorsque je travaillais sur l'interface CCB, j'ai découvert que l'encodage UTF-8 devait être converti en GB2312, j'ai donc utilisé cette fonction iconv pour convertir l'encodage.
J'ai découvert que si j'utilise la fonction iconv pour transcoder les données capturées, les données seront moindres sans raison. J'ai été déprimé pendant un moment et après avoir vérifié les informations sur Internet, j'ai découvert qu'il s'agissait d'un bug dans la fonction iconv. iconv fera une erreur lors de la conversion du caractère "-" en gb2312.
Jetons un coup d'œil à l'utilisation de cette fonction.
L'application la plus simple, remplacez gb2312 par utf-8 :
$zhuan=iconv("UTF-8","GB2312",$data);
Pendant l'utilisation, si vous rencontrez des caractères spéciaux, tels que : "-", "." et d'autres caractères dans les noms anglais, la conversion est interrompue. Le texte après ces caractères ne peut pas être converti davantage.
<br/>
Pour résoudre ce problème, vous pouvez utiliser le code suivant :
$zhuan=iconv("UTF-8","GBK",$data);
Vous l'avez fait Je ne le lis pas. Faux, c'est aussi simple que cela, n'utilisez pas gb2312 et écrivez-le en GBK.
Il existe une autre méthode, ajoutez //IGNORE au deuxième paramètre, ignorez les erreurs, comme suit :
$zhuan=iconv("UTF-8","GB2312//IGNORE",$data);
Il n'y a pas de comparaison spécifique entre ces deux méthodes, j'estime que la première méthode (GBK au lieu de gb2312) est meilleure.
Recommandations associées :
Comment utiliser la fonction iconv en php
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!