- Timestamp:
- 2007/10/29 12:06:29 (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/feature-module-update/data/class/SC_MobileEmoji.php
r16329 r16582 1 1 <?php 2 /* 3 * This file is part of EC-CUBE 4 * 5 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved. 6 * 7 * http://www.lockon.co.jp/ 8 * 9 * This program is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License 11 * as published by the Free Software Foundation; either version 2 12 * of the License, or (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with this program; if not, write to the Free Software 21 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 22 */ 23 2 24 /** 3 25 * 表示できない絵文字を置き換える文字列 (Shift JIS) … … 10 32 */ 11 33 class SC_MobileEmoji { 12 /**13 * 絵文字タグを各キャリア用の文字コードに変換する14 * output buffering 用コールバック関数15 *16 * @param string 入力17 * @return string 出力18 */19 function handler($buffer) {20 $replace_callback = create_function('$matches', 'return SC_MobileEmoji::indexToCode($matches[1]);');21 return preg_replace_callback('/\[emoji:(e?\d+)\]/', $replace_callback, $buffer);22 }34 /** 35 * 絵文字タグを各キャリア用の文字コードに変換する 36 * output buffering 用コールバック関数 37 * 38 * @param string 入力 39 * @return string 出力 40 */ 41 function handler($buffer) { 42 $replace_callback = create_function('$matches', 'return SC_MobileEmoji::indexToCode($matches[1]);'); 43 return preg_replace_callback('/\[emoji:(e?\d+)\]/', $replace_callback, $buffer); 44 } 23 45 24 /**25 * 絵文字番号を絵文字を表す Shift JIS の文字列に変換する。26 *27 * @param string $index 絵文字番号28 * @return string 絵文字を表す Shift JIS の文字列を返す。29 */30 function indexToCode($index) {31 $carrier = SC_MobileUserAgent::getCarrier();32 if ($carrier === false) {33 return MOBILE_EMOJI_SUBSTITUTE;34 }46 /** 47 * 絵文字番号を絵文字を表す Shift JIS の文字列に変換する。 48 * 49 * @param string $index 絵文字番号 50 * @return string 絵文字を表す Shift JIS の文字列を返す。 51 */ 52 function indexToCode($index) { 53 $carrier = SC_MobileUserAgent::getCarrier(); 54 if ($carrier === false) { 55 return MOBILE_EMOJI_SUBSTITUTE; 56 } 35 57 36 static $arrMap;37 if (!isset($arrMap)) {38 $arrMap = @include_once(dirname(__FILE__) . "/../include/mobile_emoji_map_$carrier.inc");39 }58 static $arrMap; 59 if (!isset($arrMap)) { 60 $arrMap = @include_once(dirname(__FILE__) . "/../include/mobile_emoji_map_$carrier.inc"); 61 } 40 62 41 return isset($arrMap[$index]) ? $arrMap[$index] : MOBILE_EMOJI_SUBSTITUTE;42 }63 return isset($arrMap[$index]) ? $arrMap[$index] : MOBILE_EMOJI_SUBSTITUTE; 64 } 43 65 } 44 66 ?>
Note: See TracChangeset
for help on using the changeset viewer.
