2011-06-26 23 views
2

私はすでに参照しているホイールを再発明しないでくださいCyrillic characters in PHP's json_encodeキリル文字のphp json_encode

質問は次のとおりです。それらの文字は何ですか?それらの意味は何ですか:\ u0435、\ u0434などですか?私はバイト数とは関係ありません、ちょうどキリル文字 "е"、 "д"などに対応するUTF-8のシリアル番号ですか?

答えて

3

これらは、コードポイントを16進数で示すことによって、Unicode文字セットの文字を参照するUnicodeエスケープシーケンスです。 JSON specificationから

任意の文字をエスケープすることができます。キャラクタが基本 多言語面(U + 0000〜U + FFFF)にある場合、 は6文字の順序で表されます。逆ソリッド、 、小文字のu、その後の16進数の4桁その は文字のコードポイントをエンコードします。 Aただし、 Fの16進数の英字は、大文字または小文字にすることができます。従って、例えば、 を含む文字列は、 "\u005C"と表すことができます。これらの文字はjson_encodeはUS-ASCIIでもあるそれらの文字以外の任意の文字をエンコードし、(を参照してください)エスケープする必要はありませんが

US-ASCIIベースのプロトコルでエンコーディングの問題を回避するために、(source of json.cを参照してください) 。

だから、JSON文字列の内部で、\u0435はCYRILLIC SMALL LETTER IE(е)と\u0434参照CYRILLIC SMALL LETTER DE(д)であるU + 0434の文字であるU + 0435の文字を参照します。

関連する問題