MobilePictogramConverterの使い方について

使用方法がよく分からないとの意見があったので、今回は使用方法について説明しようと思います。

以下がMPCを使用する上で、最もシンプルなコードです。

<?php
require_once 'MobilePictogramConverter.php';

$str = pack('H*', 'F89F'); // DoCoMo 絵文字 (太陽のマーク)
$mpc =& MobilePictogramConverter::factory($str, MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);
echo $mpc->autoConvert();
?>

上記コードの実行結果

これを実行すると、アクセス元のユーザーエージェントにより、各キャリアの絵文字に変換されます。

とりあえず、MPCに当たる部分を説明して行きます。


$mpc =& MobilePictogramConverter::factory($str, MPC_FROM_FOMA, MPC_FROM_CHARSET_SJIS);

上記コードは、キャリアにあったクラスをインスタンス化しています。
基本的に、変換対象はここで指定する引数で決まります。

引数は合計で4つあります。


【第一引数】 (必須)
変換対象の文字列


【第二引数】 (必須)
第一引数で指定した文字列の絵文字キャリア
以下の定数を指定する事が可能です。

  1. MPC_FROM_FOMA (i-mode 絵文字)
  2. MPC_FROM_EZWEB (au 絵文字)
  3. MPC_FROM_SOFTBANK (SoftBank 絵文字)
掲示板等の場合、UserAgentで判断すると良いかも


【第三引数】 (必須)
第一引数で指定した文字列の文字コード
以下の定数を指定する事が可能です。

  1. MPC_FROM_CHARSET_SJIS (Shift_JIS)
  2. MPC_FROM_CHARSET_UTF8 (UTF-8)


【第四引数】
第一引数で指定した文字列の絵文字体系
以下の定数を指定する事が可能です。

  1. MPC_FROM_OPTION_RAW (バイナリコード) ※デフォルト
  2. MPC_FROM_OPTION_WEB (Web入力コード)
  3. MPC_FROM_OPTION_IMG (imgタグ)

次の行で実際の変換を行います。

以下の1行ですね。


echo $mpc->autoConvert();

autoConvertメソッドは$_SERVER['HTTP_USER_AGENT']からアクセスキャリアを判別し、自動でキャリアに合う絵文字へ変換します。

初心者向けとして、autoConvertは実装しました。

上記だけでは、変換先絵文字キャリアや絵文字の体系を指定出来ません。

変換オプションを自分で設定したい場合には、autoConverメソッドの中身を見てみると幸せになれるかも。

ここまでで分からない事や質問事項があれば、コメントでお願いします。