Maison >développement back-end >Problème PHP >Combien d'octets possède un caractère chinois en php ?
Introduction du personnage :
En js, le chinois occupe deux caractères et l'anglais occupe un caractère
en php, différents encodages sont différents. Dans l'encodage GBK/GB2312, les caractères chinois occupent 2 caractères, et dans l'encodage UTF-8/unicode, les caractères chinois occupent 3 caractères ;
PHP sous encodage UTF-8, un caractère chinois occupe 3 octets, et sous encodage gbk il n'occupe que 2 octets.
zìfú (Personnage)Le personnage est une entité abstraite qui peut être représentée à l'aide de nombreux schémas de caractères ou pages de codes différents. Par exemple, le codage Unicode UTF-16 représente les caractères sous la forme d'une séquence d'entiers de 16 bits, tandis que le codage Unicode UTF-8 représente les mêmes caractères sous la forme d'une séquence d'octets de 8 bits. Le Common Language Runtime utilise Unicode UTF-16 (Unicode Transformation Format, un codage 16 bits) pour représenter les caractères. Les applications ciblant le Common Language Runtime utilisent des encodages pour mapper les formes de table de caractères des schémas de caractères natifs à d'autres schémas. Les applications utilisent le décodage pour mapper les caractères des schémas non natifs aux schémas natifs.
zìjié (Octet)Octet (Octet) : Un octet est une unité de transmission d'informations sur un réseau (ou de stockage d'informations sur un disque dur ou en mémoire) . Une lettre anglaise (indépendamment des majuscules et des minuscules) occupe un octet d'espace, et un caractère chinois occupe deux octets d'espace. Symbole
: la ponctuation anglaise occupe un octet, la ponctuation chinoise occupe deux octets.
Une séquence de nombres binaires, utilisée comme unité numérique dans l'ordinateur, est généralement un nombre binaire de 8 bits. Par exemple, un code ASCII est un octet. La conversion de ces unités est :
<.> La clé pour comprendre l'encodage est de comprendre avec précision les concepts de caractères et d'octets. Ces deux concepts se confondent facilement, faisons donc une distinction ici : Description du concept ExemplesCaractère Une marque utilisée par les gens, un symbole dans un sens abstrait. '1', '中', 'a', '$', '¥', ……l'octet est une unité de stockage de données dans un ordinateur, un nombre binaire de 8 bits, qui est un très espace de stockage spécifique. 0x01, 0x45, 0xFA, ……ANSILa chaîne est en mémoire Si le "caractère" existe en codage ANSI, un caractère peut utiliser une section d'un octet ou de plusieurs mots, alors nous appelez cette chaîne une chaîne ANSI ou une chaîne multi-octets. "Chinois 123" (occupe 7 octets)UNICODELa chaîne est en mémoire Si le "caractère" existe comme numéro de série en UNICODE, alors nous appelons. ce type de chaîne est une chaîne UNICODE ou une chaîne à octets larges. L"中文123" (occupe 10 octets)Étant donné que les normes spécifiées par différents encodages ANSI sont différentes, par conséquent, pour une chaîne multi-octets donnée, nous devons savoir quelle règle d'encodage il utilise pour savoir quels "caractères" il contient. Pour les chaînes UNICODE, quel que soit l'environnement, le contenu "caractère" qu'elle représente est toujours le même.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!