您的位置:首页 > 移动开发 > 微信开发

【php】微信公众帐号开发接口--Emoji表情

2014-02-01 16:59 405 查看
微信公众平台中,开发者可以向用户发送表情。比如QQ表情,符号表情。QQ表情的发送很简单,QQ表情虽然呈现为 表情图片,但在微信公众平台中却是属于文本消息。每个表情都有唯一的代码与之对应,比如第一个表情“微笑”,有三种表示方式:/微笑;[微笑];/::),直接向消息接口的contentStr 传递这样的参数即可向用户发送QQ表情。这中方法很简单,就不再赘述。

在这里,笔者主要想阐述如何在php环境下向用户发送符号表情。

符号表情的实质也是一条文本消息。不过,与QQ表情不同的是,它是unicode编码,如果直接发送那么会原样输出。开发者需要对其进行编码转换。请看代码:

public function emoji($emoji_str)
{
//将字符串组合成json格式
$emoji_str = '["'.$emoji_str.'"]';
$emoji_arr = json_decode($emoji_str, true);
if (count($emoji_arr) == 1)
return $emoji_arr[0];
else
return null;
}
在php5.0及以上版本中提供了  json_decode方法。JSON是一种数据的存储格式,说通俗点,它真的很像数组,更多详细的信息请自行查阅资料。我们首先将字符串转换为数组格式,再采用json_decode方法。这样就可以很好的将unicode编码转为utf-8编码。

在需要显示符号表情的地方调用该函数,如:

$contentStr = "[肌肉]".$this->emoji($emoji_str = "\ue14c");


更多表情代码以及实现方式请参考两个链接:

柳峰的专栏

Emoji for PHP

转帖请注明本文出自bsdcfp的专栏,请尊重他人的辛勤劳动成果,谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐