JIS X 0213:2004で追加された「叱」の異体字は、Unicodeにおいては「UTF-8で符号化すると4バイトになる」コードが割り当てられている。また、中国語をまともに扱おうと思ったら「UTF-8で4バイト」の文字を扱う必要が出てくる。 そんな文字どもをMySQLデータベースに放り込もうと、UTF-8指定でがんばっていたのだが、ひとつの結論に行き着いたらしい。 MySQLの"UTF-8"にご用心 - yanok.net 「UTF-8で4バイト」の文字を扱おうと思ったら、MySQL 5.5.3以降を使い、さらに"utf8mb4"を指定せよ、という冗談のような本当の話。 まぁグダグダ言っても始まらないので、まずは手元にある環境で試してみるところから。 事前準備 環境として、以下のものを使用する。 OS Windows Vista Business SP2 (x86) PHP v5.3.