Les caractères chinois sont convertis en entités HTML (codage Unicode représenté par décimal). L'avantage est que quel que soit le codage de la page Web, les caractères chinois peuvent être affichés normalement sans caractères tronqués. d'autres jeux de caractères.
En PHP, nous pouvons utiliser la fonction mb_convert_encoding de mbstring pour réaliser cette conversion directe et inverse.
Tels que :
mb_convert_encoding ("Bonjour", "HTML-ENTITIES", "gb2312"); //Sortie : 你好
mb_convert_encoding ("你好", "gb2312", "HTML-ENTITIES"); //Sortie : Bonjour
Si vous devez convertir la page entière, il vous suffit d'ajouter ces trois lignes de code en tête du fichier php :
mb_internal_encoding("gb2312"); // gb2312 voici l'encodage original de votre site web
mb_http_output("HTML-ENTITIES");
ob_start('mb_output_handler');
Version Asp Vous pouvez utiliser la fonction suivante pour réaliser cette conversion :
Fonction htmlentities(str)
Pour i = 1 à Len(str)
char = mid(str, i, 1)
Si AscW(char) > 0 alors
htmlentities = htmlentities & "" & Ascw(char) & ";"
Autre
htmlentities = htmlentities & "" & (65536 + ascW(char)) & ";"
Terminer si
Suivant
Fin de fonction
Version JS
fonction htmlentities(str)
{
var r = "";
pour( i=0; i
temp = str.charCodeAt(i);
r += ""+temp+";";
>
// Vous pouvez également utiliser une expression régulière pour résoudre le problème
// r = str.replace(/[dD]/g, function($0) { return "" + $0.charCodeAt(0) + ";"; });
Retour r;
>
version asp.net (c#)
chaîne privée GetHtmlEntities(string str)
{
string r = string.Empty;
pour (int i = 0; i < str.Length; i++)
{
r += ""+Char.ConvertToUtf32(str,i)+";";
>
return r;
>
Documents associés : Entités de caractères HTML couramment utilisées dans les pages Web
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!