博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信中QQ表情的解析(php)
阅读量:6259 次
发布时间:2019-06-22

本文共 934 字,大约阅读时间需要 3 分钟。

微信公众平台接受的消息中,标签是用'/:'开头的字符串表示的,假设要在网页上显示(比方制作微信大屏幕),就须要进行转换。

所以我向微信公众平台按顺序发送了各个QQ表情,在微信公众平台后台能够看到接受的表情会被解析成https://res.wx.qq.com/mpres/htmledition/images/icon/emotion/0.gif 这种图片。所以自己写一套解析函数就可以。

在微信公众平台后台发现,腾讯自己干了一件错误的事情:有一些表情没有被正确解析,这些标签的特点是有括号、引號这种字符,被转移掉了,没有转换回来,所以须要使用到htmlspecialchars_decode()函数。详细代码例如以下:

function qqface_convert_html($text){		return str_replace( $GLOBALS['qqface_maps'], array_map( "add_img_label",  array_keys($GLOBALS['qqface_maps'])  ), array_map( "array_htmlspecialchars_decode", $text )  );}function array_htmlspecialchars_decode($v){	return htmlspecialchars_decode($v, ENT_QUOTES);}function add_img_label($v){	return '';}
array_map() 函数的第一个參数是回调函数,第二个參数须要是一个数组,遍历数组的内容,调入第一个函数,然后返回用户自己定义函数作用后的数组。比如(http://www.w3school.com.cn/php/func_array_map.asp):

$GLOBALS['qqface_maps']
的内容,还请到https://github.com/auver/qqface 下载阅读

emoji表情的解析,有人已给出emoji表和配套css、sprite,直接调用就可以,请參看https://github.com/iamcal/php-emoji

转载地址:http://ocqsa.baihongyu.com/

你可能感兴趣的文章
UML在需求分析阶段的应用
查看>>
JavaScript:JavaScript事件的处理
查看>>
WEB安全测试的类型
查看>>
ES6笔记(7)-- Promise异步编程
查看>>
早睡早起
查看>>
C#软件监控外部程序运行状态
查看>>
几款开源的图形化Redis客户端管理软件推荐
查看>>
数据库设计中常见表结构的设计技巧
查看>>
CVPR论文《100+ Times Faster Weighted Median Filter (WMF)》的实现和解析(附源代码)。...
查看>>
MATLAB模糊逻辑(2)
查看>>
linux 内核模块管理
查看>>
【每日一摩斯】-【序列】-续-RAC and Sequences (853652.1)
查看>>
把一个select查询结果插入到一个表(可选指定字段和值实例)
查看>>
使用windbg抓取崩溃文件和分析的过程
查看>>
ViewHolder模式超简洁写法
查看>>
项目管理学习笔记之三.绩效分析
查看>>
php十行代码将xml转成数组
查看>>
centos 7 执行 groupinstall报错
查看>>
Web开发入门
查看>>
Flex开发小结(1)如何使用AdvancedDataGrid
查看>>