具体的には、
php.iniでのmbstring設定
php.iniでの文字コード自動変換設定
PHPスクリプトファイルの文字コード
などです。
あと、上記設定とSmartyとの組み合わせ方法についても言及されていると助かります。
基本絵文字は 「&#」 + shift-jisの10進数 + 「;」(例 で晴れの絵文字)
拡張絵文字は 「&#x」 + unicodeの16進数 + 「;」(例 で晴れの絵文字)
これをshift-jisでhtmlにすると絵文字出力できます
ちなみにmbstringは使ってもあまり意味がないかもしれません
shift-jisで16進F8F9は
unicodeでE63Eなのですが
どちらもコードで表すので(文字列で表してない)
E63Eをunicodeに文字コード変換してもE63Eにならないからです
phpで16進変換はbin2hexだったかな
http://www.hajimeteno.ne.jp/i-mode/emoji1.html
i-mode HTML 絵文字一覧表1
i-modeの絵文字をそのまま扱うことはそもそも不可能だと思います。しかしながら、数値文字参照は可能ですので、これは2バイト文字のエンコードにかかわらず使用できるでしょう。で、それ以前にi-modeではshift_jisでの出力が前提です。なので、とにかくshift_jisで出力する、が正解では?内部文字エンコーディングはeuc_jpの方がphp的に良いと思いますけど。
http://specters.net/cgipon/labo/it_emoji.html
モバイルCGI研究(i-mode編)絵文字の処理 [CGIぽん]
なるほど、i-mode向けに「出力」するのではなくi-modeからの「入力」の処理方法の話でしたか、すみません。
URLが参考になるかと思います。
ありがとうございます。PHPでの例もあると助かります。。。
出力はSJISですよね。内部エンコーディングをEUCとしたときに、SJISで入力されてくる文字列をどのように扱えばよいのでしょうか?