PHP逆引き大全 516の極意

モバイルプログラミングの極意 - Tips485 絵文字を各キャリア毎に変換する

登録タグ
PHP
Icon comment count 0
Icon stock count 0

8-3モバイルプログラミングの応用Tips485 絵文字を各キャリア毎に変換する

Level3

PointSmartyを使用し、1つのプログラムで絵文字が扱えるようにする

各キャリア毎に絵文字の扱い方は違いますが、それを1つのプログラムで絵文字が扱えるようにします。本TipsではSmartyを使用します。

各キャリアの絵文字の仕様は大きく違っています。絵文字に割り当てられているコードやその記述方法など、多種多様です。さらにSJISコードやUnicode、ウェブコード……などなどともかく複雑怪奇なのです。これではプログラマーもHTMLを書くデザイナーさんもサイト運営者も混乱してしまいます。そこで、本Tipsでは、絵文字のコードは「ドコモのUnicode」表記に統一し、プログラムで各キャリア毎に変換して出力させる方法を解説します。

本Tipsでは2つのSmartyのアウトプットフィルターを使います。ひとつは「481」で紹介した、iモード、EZWebには文字コードをSJISに、Y!ケータイにはUTF-8のままで出力する文字コード変換フィルター(リスト3)、もう一つは絵文字を各キャリア向けに変換するフィルターです(リスト2)。まずリスト2をoutputfilter.emoji.php、リスト3をoutputfilter.convert_encode.phpという名前でSmartyのPluginsディレクトリに保存します。またプログラム及びテンプレートファイルは全て文字コードがUTF-8なのに注意してください。

出典情報

Medium

PHP逆引き大全 516の極意

  • 著者: 大家 正登, 茂木 健一, 鮫島 康浩, 谷中 志織

コメント

    コメントはありません