それまではSoftBankが独自に割り当てたコードで扱われていた。
iOS5.xになってからUnicodeに準拠した?絵文字の扱いになったらしい。
だもんで、全く違うコードで飛んできます。
それにかなりバラバラのコードなので、、、それはそれで面倒だったりするんですが、それ以上に面倒なのがサロゲートペアと呼ばれ2文字で1絵文字が表現されてるところでしょう!
( ゚∀゚)・∵. グハッ!!
四角1や国旗なんかがそう。
四角1の絵文字は、数字の1(\x31)と四角(\xe283a3)で表されます。
日本国の国旗の絵文字は、\xf09f87af のJと\xf09f87b5 のPで表されます。
JやPのように4バイトUnicodeであれば \xf0\x9f[\x00-\ff][\x00-\xff] でざっくりと削除しちゃえばいいんですけど(個人的にはちゃんと指定した)…四角1なんかは mb_strlen() で文字数カウントすると2が返ってきますからねー。
それに、晴れ(太陽)や雨(傘)、エクスクラメーションやクエッションマーク、コピーライトなんかは、そのまんまUnicode。
iOS4.xとマッピングさせたりする必要があったりなかったりして、でもとりあえず現状でiOS5.xの絵文字だけ除去って寸法。iOS4.xはBanしちゃおうぜ!w
まあ、MySQLの特定バージョン以上かつキャラセットをutf8mb4にしちゃえば格納できるので、新しいサービスとか環境セットアップから始まるならそれ良いんじゃね?って個人的には思う。
ガラケーとの絵文字の兼ね合いでマッピングさせたりなんだり、大変な苦労をしてるところもあるんだろうね。
ご愁傷様です。
iOS5.xになってからUnicodeに準拠した?絵文字の扱いになったらしい。
だもんで、全く違うコードで飛んできます。
それにかなりバラバラのコードなので、、、それはそれで面倒だったりするんですが、それ以上に面倒なのがサロゲートペアと呼ばれ2文字で1絵文字が表現されてるところでしょう!
( ゚∀゚)・∵. グハッ!!
四角1や国旗なんかがそう。
四角1の絵文字は、数字の1(\x31)と四角(\xe283a3)で表されます。
日本国の国旗の絵文字は、\xf09f87af のJと\xf09f87b5 のPで表されます。
JやPのように4バイトUnicodeであれば \xf0\x9f[\x00-\ff][\x00-\xff] でざっくりと削除しちゃえばいいんですけど(個人的にはちゃんと指定した)…四角1なんかは mb_strlen() で文字数カウントすると2が返ってきますからねー。
それに、晴れ(太陽)や雨(傘)、エクスクラメーションやクエッションマーク、コピーライトなんかは、そのまんまUnicode。
iOS4.xとマッピングさせたりする必要があったりなかったりして、でもとりあえず現状でiOS5.xの絵文字だけ除去って寸法。iOS4.xはBanしちゃおうぜ!w
まあ、MySQLの特定バージョン以上かつキャラセットをutf8mb4にしちゃえば格納できるので、新しいサービスとか環境セットアップから始まるならそれ良いんじゃね?って個人的には思う。
ガラケーとの絵文字の兼ね合いでマッピングさせたりなんだり、大変な苦労をしてるところもあるんだろうね。
ご愁傷様です。