Maison >développement back-end >Problème PHP >Comment définir le format d'encodage en php

Comment définir le format d'encodage en php

(*-*)浩
(*-*)浩original
2019-09-20 09:08:375853parcourir

Comment définir le format d'encodage en php

Si vous souhaitez utiliser l'encodage gb2312, alors PHP doit afficher l'en-tête :

header(“Content-Type: text/html; charset=gb2312")

Ajout de page statique (apprentissage recommandé : Programmation PHP de l'entrée à la maîtrise)

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

Le format d'encodage de tous les fichiers est ANSI, qui peut être ouvert avec le Bloc-notes, enregistrez sous et sélectionnez l'encodage au format ANSI pour écraser le fichier source.

Si vous souhaitez utiliser l'encodage utf-8, alors php devrait afficher l'en-tête :

header(“Content-Type: text/html; charset=utf-8")

Ajouter

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

encodage de tous fichiers vers la page statique Le format est utf-8.

Récemment, j'ai besoin d'utiliser la fonction iconv pour convertir la page codée en utf-8 capturée en gb2312. J'ai découvert que ce n'est qu'en utilisant la fonction iconv pour transcoder les données capturées que les données seront inexpliquées. . moins.

Cela m'a déprimé pendant un moment. 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.

La solution est très simple, c'est-à-dire ajouter "//IGNORE" après l'encodage à convertir, c'est-à-dire après le deuxième paramètre de la fonction iconv, comme suit :

iconv("UTF-8","GB2312//IGNORE",$data)

ignorer signifie ignorer la conversion. Il s'agit d'une erreur. S'il n'y a pas de paramètre ignore, toutes les chaînes suivant ce caractère ne peuvent pas être enregistrées.

Dans le contrôleur php mvc ou la page php

echo &#39;<meta http-equiv="content-type" content="text/html; charset=utf-8">&#39;;

Dans la page php ou la page html

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Utiliser la fonction d'en-tête

dans le contrôleur ou la page

header("content-type:text/html; charset=utf-8");

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn