Maison > Article > développement back-end > Comment convertir des emoji php en texte
Comment convertir un emoji php en texte : 1. Créez un exemple de fichier PHP ; 2. Utilisez la méthode "function utf16_to_entities(){...}" pour convertir l'emoji en une entité de caractère HTML et enregistrez-le.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
php Comment convertir des emoji en texte ?
PHP Convertir des expressions emoji en entités de caractères HTML :
Saisie du terminal mobile Vous permet de saisir des émoticônes. Les émoticônes sont en fait codées en UTF-16 et seront perdues dans le stockage de la base de données. Actuellement, si vous modifiez le codage des caractères de la base de données en utf8mb4, il peut également être enregistré.
Si vous ne souhaitez pas modifier d'autres émoticônes, vous pouvez convertir ces émoticônes en entités de caractères HTML et les enregistrer.
Le code est le suivant :
function utf16_to_entities(){ $content = mb_convert_encoding($content, 'utf-16'); $bin = bin2hex($content); $arr = str_split($bin, 4); $l = count($arr); $str = ''; for ($n = 0; $n < $l; $n++) { if (isset($arr[$n + 1]) && ('0x' . $arr[$n] >= 0xd800 && '0x' . $arr[$n] <= 0xdbff && '0x' . $arr[$n + 1] >= 0xdc00 && '0x' . $arr[$n + 1] <= 0xdfff)) { $H = '0x' . $arr[$n]; $L = '0x' . $arr[$n + 1]; $code = ($H - 0xD800) * 0x400 + 0x10000 + $L - 0xDC00; $str.= '&#' . $code . ';'; $n++; } else { $str.=mb_convert_encoding(hex2bin($arr[$n]),'utf-8','utf-16'); } } return $str; }
Remarque : Les caractères ici sont enregistrés au format utf-8 Si le format traité par le code est GBK, modifiez-le vous-même.
Apprentissage recommandé : "Tutoriel vidéo 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!