Ejemplo n.º 1
0
 /**
  * 絵文字コードを指定キャリアの絵文字もしくは代替文字列に変換する
  */
 function convert_emoji($o_code, $c_carrier = null)
 {
     $o_carrier = $o_code[0];
     $o_id = substr($o_code, 2);
     if (is_null($c_carrier) || $o_carrier == $c_carrier) {
         // キャリアの変更がないか、キャリアが指定されていない場合はそのまま変換処理
         $c_code = $o_id;
         switch ($c_carrier) {
             case 'i':
                 $converter = OpenPNE_KtaiEmoji_Docomo::getInstance();
                 break;
             case 's':
                 $converter = OpenPNE_KtaiEmoji_Softbank::getInstance();
                 break;
             case 'e':
                 $converter = OpenPNE_KtaiEmoji_Au::getInstance();
                 break;
             default:
                 // PC向けau/SoftBank→DoCoMo絵文字変換
                 if ((!defined('OPENPNE_EMOJI_DOCOMO_FOR_PC') || OPENPNE_EMOJI_DOCOMO_FOR_PC) && $o_carrier !== 'i') {
                     return self::convertEmoji($this->relation_list[$o_carrier]['i'][$o_id]);
                 }
                 $c_code = $o_code;
                 // 画像出力の際にキャリア情報が必要になるため、絵文字IDではなく絵文字コードを用いる
                 $converter = OpenPNE_KtaiEmoji_Img::getInstance();
                 break;
         }
         return $converter->get_emoji4emoji_code_id($c_code);
     } else {
         // キャリアの変更がある場合、ここでの変換処理はおこなわず、対応する文字列に置換した上で再度変換処理
         return self::convertEmoji($this->relation_list[$o_carrier][$c_carrier][$o_id]);
     }
 }
Ejemplo n.º 2
0
function emojicode_to_image($matches)
{
    $emoji = new OpenPNE_KtaiEmoji_Img();
    return $emoji->get_emoji4emoji_code_id($matches[1]);
}