PHP 4 または 5 で UTF-8 文字列の UCS-2 コード ポイントを取得する
UTF の UCS-2 コード ポイントを取得するには-8 文字列を使用すると、PHP で利用可能な既存のユーティリティを利用できます。この変換を容易にするために、iconv などのライブラリの使用を検討してください。
カスタム ソリューションを希望する場合は、UTF-8 形式を理解することが重要です。各コード ポイントは、その値に基づいて 1 ~ 4 バイトとして保存されます。次の範囲が適用されます:
文字のバイト数を判断するには、最初のバイトを調べます。接頭辞 0 は 1 バイト文字、110 は 2 バイト、1110 は 3 バイト文字、11110 は 4 バイト文字を示します。
文字のサイズがわかったら、ビット単位の演算を実行して変換できます。それ。 UCS-2 は U FFFF より上の文字を表現できないことに注意してください。
参考までに、使用できる PHP 4 または 5 の関数を次に示します。
<code class="php">function get_ucs2_codepoint($char) { $byte = ord($char); if ($byte < 128) { return $byte; } elseif ($byte < 224) { return (($byte & 63) << 6) | (ord($char[1]) & 63); } elseif ($byte < 240) { return (($byte & 31) << 12) | ((ord($char[1]) & 63) << 6) | (ord($char[2]) & 63); } else { return 0; // UCS-2 cannot handle code points this high } }</code>
この関数は処理できないことに注意してください。すべての Unicode 文字。UCS-2 で表現できるもののみ。完全な Unicode を処理する必要がある場合は、代替ライブラリまたは PHP 6 関数を使用する必要があります。
以上がPHP 4 または 5 で UTF-8 文字列を UCS-2 コードポイントに変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。