Heim  >  Artikel  >  Backend-Entwicklung  >  Implementierungsmethode zur zufälligen Generierung chinesischer Zeichen in PHP

Implementierungsmethode zur zufälligen Generierung chinesischer Zeichen in PHP

小云云
小云云Original
2018-03-02 09:18:044561Durchsuche

GB 2312-80 ist Chinas nationaler Standard-Zeichensatz für vereinfachtes Chinesisch. Der vollständige Name lautet „Chinese Coded Character Set for Information Exchange·Basic Set“, veröffentlicht von der State Administration of Standards of China und umgesetzt am 1. Mai 1981. Die GB2312-Kodierung ist auf dem chinesischen Festland beliebt; auch Singapur und andere Orte verwenden diese Kodierung. Fast alle chinesischen Systeme und internationale Software auf dem chinesischen Festland unterstützen GB 2312.

Der GB2312-Standard enthält insgesamt 6763 chinesische Schriftzeichen, darunter 3755 chinesische Schriftzeichen der ersten Stufe und 3008 chinesische Schriftzeichen der zweiten Stufe; er umfasst außerdem lateinische Buchstaben, griechische Buchstaben, japanische Hiragana- und Katakana-Buchstaben. Russische Siri 682 Zeichen inklusive Er-Buchstaben. Das Aufkommen von GB2312 deckt im Wesentlichen den Computerverarbeitungsbedarf chinesischer Schriftzeichen ab. Die darin enthaltenen chinesischen Schriftzeichen decken 99,75 % der Verwendungshäufigkeit auf dem chinesischen Festland ab. GB2312 kann seltene Zeichen, die in Personennamen, im alten Chinesisch usw. vorkommen, nicht verarbeiten, was zur Entstehung der späteren chinesischen Zeichensätze GBK und GB18030 führte.

In GB2312 sind die gesammelten chinesischen Schriftzeichen „partitioniert“ und jede Zone enthält 94 chinesische Schriftzeichen/Symbole. Diese Darstellung wird auch Standortcode genannt.

  • Die Bereiche 01 – 09 sind Sondersymbole.

  • Die Bereiche 16 – 55 sind chinesische Schriftzeichen der ersten Ebene, sortiert nach Pinyin.

  • Die Bereiche 56 – 87 sind chinesische Schriftzeichen der zweiten Ebene, sortiert nach Radikal/Strich.

 Bezirke 10-15 und 88-94 sind nicht kodiert. Beispielsweise ist das Zeichen „ah“ das erste chinesische Zeichen in GB2312 und sein Standortcode ist 1601.

Jedes chinesische Zeichen und Symbol wird durch zwei Bytes dargestellt. Das erste Byte wird als „High-Byte“ und das zweite Byte als „Low-Byte“ bezeichnet. Das „High Byte“ verwendet 0xA1 – 0xF7 (fügen Sie 0xA0 zur Vorwahl des Bereichs 01 – 87 hinzu), und das „Low Byte“ verwendet 0xA1 – 0xFE (fügen Sie 0xA0 zur Vorwahl von 01 – 94 hinzu). Da die chinesischen Zeichen der ersten Ebene im Bereich 16 beginnen, beträgt der „High-Byte“-Bereich des chinesischen Zeichenbereichs 0xB0 – 0xF7, der „Low-Byte“-Bereich 0xA1 – 0xFE und die belegten Codebits sind 72 * 94 = 6768 . 5 der verfügbaren Steckplätze sind D7FA – D7FE. Beispielsweise wird in den meisten Programmen das Wort „Ah“ in zwei Bytes gespeichert, 0xB0 (das erste Byte) und 0xA1 (das zweite Byte). (Vergleiche mit Vorwahl: 0xB0 = 0xA0 + 16, 0xA1 = 0xA0 + 1).

Der nationale Standard GB 18030-2005 „Information Technology Chinese Coded Character Set“ ist der neueste interne Codezeichensatz der Volksrepublik China. Er ist vollständig kompatibel mit GB 2312-1980, grundsätzlich kompatibel mit GBK unterstützt GB 13000 und alle einheitlichen chinesischen Schriftzeichen in Unicode umfassen insgesamt 70.244 chinesische Schriftzeichen. Die aktuelle Version wurde am 8. November 2005 von der State Administration of Quality Supervision and Inspection und dem China National Standardization Administration Committee veröffentlicht und am 1. Mai 2006 implementiert. Es handelt sich um einen verbindlichen Standard, der von allen Softwareprodukten in China unterstützt wird.

 function getChar($num)  // $num为生成汉字的数量
    {
        $b = '';
        for ($i=0; $i<$num; $i++) {
            // 使用chr()函数拼接双字节汉字,前一个chr()为高位字节,后一个为低位字节
            $a = chr(mt_rand(0xB0,0xD0)).chr(mt_rand(0xA1, 0xF0));
            // 转码
            $b .= iconv('GB2312', 'UTF-8', $a);
        }
        return $b;
    }

Verwandte Empfehlungen:

SQLServer-Funktion zum schnellen Generieren der Anfangsbuchstaben chinesischer Schriftzeichen (klassisch)

Das obige ist der detaillierte Inhalt vonImplementierungsmethode zur zufälligen Generierung chinesischer Zeichen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn