返回

php 如何处理 emoji 表情,保存到 mysql

发布时间:2022-09-23 18:14:01 302
# php# mysql# 数据库# sql# json

php 如何处理 emoji 表情,保存到 mysql

不考虑数据库的编码格式什么之类的,最直接的方法就是把文本中的 emoji 转换成文本保存。取出的时候再将文本转换成 emoji 表格即可。

直接上代码:

/*
* unicode -> text
*/
function unicodeEncode($str){
if(!is_string($str))return $str;
if(!$str || $str=='undefined')return '';

$text = json_encode($str);
$text = preg_replace_callback("/(\\\u[ed][0-9a-f]{3})/i",function($str){
return addslashes($str[0]);
},$text);
return json_decode($text);
}

/**
* text -> unicode
*/
function unicodeDecode($str)
{
$text = json_encode($str);
$text = preg_replace_callback('/\\\\\\\\/i', function ($str) {
return '\\';
}, $text);
return json_decode($text);
}

实例

我有一个日记项目,支持 emoji 后,在取出和保存的时候都会对文本进行处理

保存时:

$title = unicodeEncode($title);
$content = unicodeEncode($content);

取出时:

// 处理数据,把带 emoji 表情的数据解析出来
$decodedDiaries = array();
foreach ($diaries as $diary){
$diary['title'] = unicodeDecode($diary['title']);
$diary['content'] = unicodeDecode($diary['content']);
array_push($decodedDiaries, $diary);
}
$response->setData($decodedDiaries);

php 如何处理 emoji 表情,保存到 mysql_ico


特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(0)
按点赞数排序
用户头像
精选文章
thumb 中国研究员首次曝光美国国安局顶级后门—“方程式组织”
thumb 俄乌线上战争,网络攻击弥漫着数字硝烟
thumb 从网络安全角度了解俄罗斯入侵乌克兰的相关事件时间线