不用iconv函數(shù)實(shí)現(xiàn)UTF-8編碼轉(zhuǎn)換GB2312的PHP函數(shù)
Jun 08, 2016 pm 05:33 PM假如使用 iconv() 函數(shù)轉(zhuǎn)換編碼就相比比較簡(jiǎn)單了,不過很多虛擬主機(jī)里并不支持這個(gè)組件,我在網(wǎng)上找半天,才找到一個(gè)gb2312轉(zhuǎn)utf-8的方法,但不能逆向轉(zhuǎn)換。
這個(gè)函數(shù)如下:
/*******************************
//GB轉(zhuǎn)UTF-8編碼
*******************************/
function gb2utf8($gbstr) {
global $CODETABLE;
if(trim($gbstr)=="") return $gbstr;
if(empty($CODETABLE)){
$filename = dirname(__FILE__)."/gb2312-utf8.table";
$fp = fopen($filename,"r");
while ($l = fgets($fp,15))
{ $CODETABLE[hexdec(substr($l, 0, 6))] = substr($l, 7, 6); }
fclose($fp);
}
$ret = "";
$utf8 = "";
while ($gbstr) {
if (ord(substr($gbstr, 0, 1)) > 127) {
$thisW = substr($gbstr, 0, 2);
$gbstr = substr($gbstr, 2, strlen($gbstr));
$utf8 = "";
@$utf8 = u2utf8(hexdec($CODETABLE[hexdec(bin2hex($thisW)) - 0x8080]));
if($utf8!=""){
for ($i = 0;$i
$ret .= chr(substr($utf8, $i, 3));
}
}
else
{
$ret .= substr($gbstr, 0, 1);
$gbstr = substr($gbstr, 1, strlen($gbstr));
}
}
return $ret;
}
//Unicode轉(zhuǎn)utf8
function u2utf8($c) {
for ($i = 0;$i
$str = "";
if ($c
$str .= $c;
} else if ($c
$str .= (0xC0 | $c >> 6);
$str .= (0x80 | $c & 0x3F);
} else if ($c
$str .= (0xE0 | $c >> 12);
$str .= (0x80 | $c >> 6 & 0x3F);
$str .= (0x80 | $c & 0x3F);
} else if ($c
$str .= (0xF0 | $c >> 18);
$str .= (0x80 | $c >> 12 & 0x3F);
$str .= (0x80 | $c >> 6 & 0x3F);
$str .= (0x80 | $c & 0x3F);
}

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Cet article expliquera en détail la valeur ASCII du premier caractère de la cha?ne renvoyée par PHP. L'éditeur pense que c'est très pratique, je la partage donc avec vous comme référence, j'espère que vous pourrez gagner quelque chose après avoir lu cet article. PHP renvoie la valeur ASCII du premier caractère d'une cha?ne Introduction En PHP, obtenir la valeur ASCII du premier caractère d'une cha?ne est une opération courante qui implique des connaissances de base sur le traitement des cha?nes et l'encodage des caractères. Les valeurs ASCII sont utilisées pour représenter la valeur numérique des caractères dans les systèmes informatiques et sont essentielles à la comparaison des caractères, à la transmission et au stockage des données. Le processus d'obtention de la valeur ASCII du premier caractère d'une cha?ne implique les étapes suivantes : Obtenir la cha?ne : Déterminez la cha?ne pour laquelle vous souhaitez obtenir la valeur ASCII. Il peut s'agir d'une variable ou d'une constante cha?ne

Cet article expliquera en détail comment PHP renvoie la cha?ne de la position de début à la position de fin d'une cha?ne dans une autre cha?ne. L'éditeur pense que c'est assez pratique, je le partage donc avec vous comme référence, j'espère que vous finirez de lire. cet article. Vous pouvez tirer quelque chose de cet article. Utilisez la fonction substr() en PHP pour extraire des sous-cha?nes d'une cha?ne. La fonction substr() peut extraire des caractères dans une plage spécifiée d'une cha?ne. La syntaxe est la suivante : substr(string,start,length) où : string : la cha?ne d'origine à partir de laquelle la sous-cha?ne doit être extraite. start?: L'index de la position de départ de la sous-cha?ne (à partir de 0). length (facultatif)?: la longueur de la sous-cha?ne. Si non précisé, alors

php提交表單通過后,彈出的對(duì)話框怎樣在當(dāng)前頁彈出php提交表單通過后,彈出的對(duì)話框怎樣在當(dāng)前頁彈出而不是在空白頁彈出?想實(shí)現(xiàn)這樣的效果:而不是空白頁彈出:------解決方案--------------------如果你的驗(yàn)證用PHP在后端,那么就用Ajax;僅供參考:HTML code

1L'unité de base du stockage informatique Unicode est l'octet, composé de 8 bits. étant donné que l'anglais ne comprend que 26 lettres et un certain nombre de symboles, les caractères anglais peuvent être stockés directement en octets. Mais d'autres langues (comme le chinois, le japonais, le coréen, etc.) doivent utiliser plusieurs octets pour le codage en raison du grand nombre de caractères. Avec la diffusion de la technologie informatique, la technologie de codage des caractères non latins continue de se développer, mais il existe encore deux limitations majeures : pas de support multilingue : le schéma de codage d'une langue ne peut pas être utilisé dans une autre langue et il n'existe pas de norme unifiée : par exemple, il existe de nombreuses normes d'encodage en chinois telles que GBK, GB2312, GB18030, etc. étant donné que les méthodes d'encodage ne sont pas unifiées, les développeurs doivent effectuer des conversions entre différents encodages, et de nombreuses erreurs se produiront inévitablement.

Quelles sont les similitudes et les différences entre __str__ et __repr__ ? Nous connaissons tous la représentation des cha?nes. La fonction intégrée repr() de Python peut exprimer des objets sous forme de cha?nes pour faciliter notre identification. Il s'agit de la "représentation sous forme de cha?ne". repr() obtient la représentation sous forme de cha?ne d'un objet via la méthode spéciale __repr__. Si __repr__ n'est pas implémenté, lorsque nous imprimons une instance d'un vecteur sur la console, la cha?ne résultante peut l'être. >>>classExample:pass>>>print(str(Example()))>>>

Comprendre la fonction substr() en PHP pour intercepter des cha?nes Dans le langage PHP, la fonction substr() est une fonction de traitement de cha?ne très utile, qui peut être utilisée pour intercepter des fragments de cha?ne à une position et une longueur spécifiées. La fonction substr() accepte trois paramètres : la cha?ne à intercepter, la position de départ de l'interception et la durée de l'interception. Ci-dessous, nous présenterons en détail l’utilisation de la fonction substr() et donnerons des exemples de code spécifiques. Utilisation de base de la fonction substr() fonction substr()

Utilisez la fonction PHP "substr" pour obtenir la sous-cha?ne d'une cha?ne. En programmation PHP, vous rencontrez souvent des situations où vous devez obtenir une partie du contenu d'une cha?ne. à l'heure actuelle, nous pouvons utiliser la fonction intégrée "substr" de PHP pour y parvenir. Cet article explique comment utiliser la fonction ? substr ? pour obtenir une sous-cha?ne d'une cha?ne et fournit quelques exemples de code. 1. Utilisation de base de la fonction substr La fonction substr est utilisée pour obtenir une sous-cha?ne d'une longueur spécifiée à partir d'une cha?ne. Sa syntaxe de base est la suivante?: substr(

Solutions pour la fonction PHPmb_substr invalide Lors du développement d'applications PHP, la fonction mb_substr est souvent utilisée pour intercepter des cha?nes. Cependant, vous pouvez parfois rencontrer des situations dans lesquelles la fonction mb_substr n'est pas valide, principalement en raison de problèmes de codage de caractères dans différents environnements. Afin de résoudre ce problème, nous devons gérer efficacement la fonction mb_substr. Une solution courante consiste à s'assurer que la fonction mb_substr peut
