Gunnar Bittersmann: JS mit UTF-8 falsche Darstellung in HTML5

Beitrag lesen

@@dedlfix

Macht PHP das auch richtig? Oberhalb von BMP?

Wer braucht denn sowas?

Ich. 😇😈

Aber ja, da die Eingabe der Funktion json_encode() UTF-8 sein muss, kann es sogar die Zeichen oberhalb der BMP erkennen und kodieren:

$gb = "\xf0\x9d\x84\x9e";
echo $gb, ' - ', json_encode($gb);
// Ausgabe: 𝄞 - "\ud834\udd1e"

Also wie vermutet nicht richtig‽

Da sollten doch nicht zwei Codepoints (surrogates) rauskommen, sondern einer: \u{1d11e}, oder? Oder ist das für JSON anders festgelegt?

LLAP 🖖

--
Ist diese Antwort anstößig? Dann könnte sie nützlich sein.