g:subtech:id:miyagawa:20071112:1194865208を自分なりに解釈してまとめてみる。
で、miyagawaさんのところに書いてある結論としては、「auの仕様書にある絵文字のUnicodeのコードポイントは、softbankの絵文字のコードポイントとかぶるしい扱いづらいので、auで絵文字を保存する場合には上記で説明した変換方法Bで変換したutf-8で保存すべきした方がいいのかも」という話でした。
いままでauの仕様書にのっとったutf-8でデータを保存して運用している場合には、既存のデータをg:subtech:id:miyagawa:20071112:1194872156で紹介している関数を使って変換をすればよいですね。ちょとめんどうだけど。ちなみに、この変換する関数をみると上記の説明がわかると思います。
Encode::from_to($bytes, "utf-8" => "x-sjis-kddi"); Encode::from_to($bytes, "x-sjis-kddi-auto" => "utf-8");
まずauの仕様書の通りにutf-8 → sjisの変換をし、その後変換方法Bでsjis → utf-8に変換をしています。
ということで間違っていませんかね?