Maison >développement back-end >tutoriel php >Comment définir correctement le codage des caractères UTF-8 dans les en-têtes HTTP PHP pour la validation W3C ?
Comment définir l'en-tête HTTP sur UTF-8 en PHP pour la validation du W3C
Émulation de l'erreur de validation signalée par le validateur du W3C, plusieurs PHP les pages génèrent du contenu HTML à l'aide de la balise méta HTML standard :
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
Cependant, le validateur signale une divergence entre le codage de caractères spécifié dans l'en-tête HTTP et l'élément HTML. L'en-tête HTTP est supposé être en ISO-8859-1, tandis que le contenu HTML est en UTF-8.
Pour résoudre ce problème, PHP fournit la fonction header() pour modifier l'en-tête HTTP. En définissant le paramètre Content-Type sur "text/html; charset=utf-8", vous pouvez remplacer l'en-tête par défaut :
header('Content-Type: text/html; charset=utf-8');
Il est crucial d'appeler cette fonction avant qu'une sortie ne soit envoyée au client. . Si la sortie a déjà été envoyée, l'en-tête ne peut plus être modifié. Vous pouvez utiliser la fonction headers_sent pour vérifier si les en-têtes ont été envoyés. Reportez-vous au manuel PHP pour plus d'informations sur la fonction d'en-tête.
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!