„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie extrahiere ich UCS-2-Codepunkte aus UTF-8-Zeichen in PHP?

Wie extrahiere ich UCS-2-Codepunkte aus UTF-8-Zeichen in PHP?

Gepostet am 2025-02-06
Durchsuche:504

How to Extract UCS-2 Code Points from UTF-8 Characters in PHP?

Ermittlung von UCS-2-Codepunkten für UTF-8-Zeichen in php

Die vorliegende Aufgabe besteht darin, die UCS-2-Codepunkte zu extrahieren Für Zeichen innerhalb einer bestimmten UTF-8-Zeichenfolge. Um dies zu erreichen, kann eine benutzerdefinierte PHP-Funktion definiert werden.

Erstens ist es wichtig, das UTF-8-Codierungsschema zu verstehen. Jedes Zeichen wird je nach Unicode -Codepunkt durch eine Sequenz von 1 bis 4 Bytes dargestellt. The ranges for each byte size are as follows:

  • 0xxxxxxx: 1 byte
  • 110xxxxx 10xxxxxx: 2 bytes
  • 1110xxxx 10xxxxxx 10xxxxxx: 3 bytes
  • 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx: 4 bytes

To determine the number of bytes per character, examine the first byte:

  • 0: 1 byte character
  • 110: 2 byte charakter
  • 1110: 3 byte charakter
  • 11110: 4 byte charakter
  • 10: continuation byte
  • 11111: Invalid Charakter

Sobald die Nummer der Bytes bestimmt ist, kann Bit -Manipulation verwendet werden, um den Codepunkt zu extrahieren. In der obigen Analyse finden Sie hier eine benutzerdefinierte PHP-Funktion, die ein einzelnes UTF-8-Zeichen als Eingabe nimmt und ihren UCS-2-Codepunkt zurückgibt:

Funktion get_ucs2_CodePoint ($ char) { // Initialisieren Sie den Codepunkt $ codepoint = 0; // Holen Sie sich das erste Byte $ firstByte = ord ($ char); // Bestimmen Sie die Anzahl der Bytes if ($ FirstByte

Beispiel Verwendung:

function get_ucs2_codepoint($char)
{
    // Initialize the code point
    $codePoint = 0;

    // Get the first byte
    $firstByte = ord($char);

    // Determine the number of bytes
    if ($firstByte  

$ char = " N"; $ codepoint = get_ucs2_CodePoint ($ char); echo "UCS-2 Code Punkt: $ CodePoint \ n";

Ausgabe:

$char = "ñ";
$codePoint = get_ucs2_codepoint($char);
echo "UCS-2 code point: $codePoint\n";
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3