utf8 vs. utf8mb4
Heutiger Bug: Wir wollen einen UTF-8-String in einer MySQL „utf8“-kodierten Datenbank speichern, und PHP meldet sich mit einem bizarren Fehler: Incorrect string value: ‘\xF0\x9F\x98\x83 <…’ for column ‘description’ at row 1 Auf einem UTF-8 Client, einem UTF-8 Server, mit einer UTF-8 Datenbank und einer UTF-8 Kollation. Der Text, “😃 <…”, ist valides UTF-8. Und der Haken ist: MySQLs „utf8“ ist nicht UTF-8. Die „utf8“-Kodierung unterstützt nur drei Bytes pro Zeichen. Die echte UTF-8-Codierung, die man sonst so verwendet verwendet, benötigt bis…