TinkPHP 微信小程序用户昵称带表情符存储

2024-08-25 11:38

本文主要是介绍TinkPHP 微信小程序用户昵称带表情符存储,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

处理微信昵称中带表情符无法存到数据库问题。数据库需要加长微信昵称字段长度

/**对emoji表情转义

  • @param $nickname
  • @return string
    */
    function emoji_encode($nickname)
    {
    $strEncode = ‘’;
    l e n g t h = m b s t r l e n ( length = mb_strlen( length=mbstrlen(nickname, ‘utf-8’);
    for ($i = 0; $i < $length; $i++) {
    t m p S t r = m b s u b s t r ( _tmpStr = mb_substr( tmpStr=mbsubstr(nickname, i , 1 , ′ u t f − 8 ′ ) ; i f ( s t r l e n ( i, 1, &#x27;utf-8&#x27;); if (strlen( i,1,utf8);if(strlen(_tmpStr) >= 4) {
    s t r E n c o d e . = ′ [ [ E M O J I : ′ . r a w u r l e n c o d e ( strEncode .= &#x27;[[EMOJI:&#x27; . rawurlencode( strEncode.=[[EMOJI:.rawurlencode(_tmpStr) . ‘]]’;
    } else {
    $strEncode .= $_tmpStr;
    }
    }
    return $strEncode;
    }

//对emoji表情转反义
function emoji_decode($str)
{
KaTeX parse error: Expected 'EOF', got '\[' at position 37: …ace_callback('|\̲[̲\[EMOJI:(.*?)\]…matches) {
return rawurldecode($matches[1]);
}, $str);

return $strDecode;

}


作者:等灯等灯
来源:CSDN
原文:https://blog.csdn.net/qq_36180117/article/details/80846599
版权声明:本文为博主原创文章,转载请附上博文链接!

这篇关于TinkPHP 微信小程序用户昵称带表情符存储的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1105454

相关文章

Spring Boot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)

《SpringBoot分层架构详解之从Controller到Service再到Mapper的完整流程(用户管理系统为例)》本文将以一个实际案例(用户管理系统)为例,详细解析SpringBoot中Co... 目录引言:为什么学习Spring Boot分层架构?第一部分:Spring Boot的整体架构1.1

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

k8s admin用户生成token方式

《k8sadmin用户生成token方式》用户使用Kubernetes1.28创建admin命名空间并部署,通过ClusterRoleBinding为jenkins用户授权集群级权限,生成并获取其t... 目录k8s admin用户生成token创建一个admin的命名空间查看k8s namespace 的

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决

《MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决》MyBatis默认开启一级缓存,同一事务中循环调用查询方法时会重复使用缓存数据,导致获取的序列主键值均为1,... 目录问题原因解决办法如果是存储过程总结问题myBATis有如下代码获取序列作为主键IdMappe

k8s搭建nfs共享存储实践

《k8s搭建nfs共享存储实践》本文介绍NFS服务端搭建与客户端配置,涵盖安装工具、目录设置及服务启动,随后讲解K8S中NFS动态存储部署,包括创建命名空间、ServiceAccount、RBAC权限... 目录1. NFS搭建1.1 部署NFS服务端1.1.1 下载nfs-utils和rpcbind1.1

Redis高性能Key-Value存储与缓存利器常见解决方案

《Redis高性能Key-Value存储与缓存利器常见解决方案》Redis是高性能内存Key-Value存储系统,支持丰富数据类型与持久化方案(RDB/AOF),本文给大家介绍Redis高性能Key-... 目录Redis:高性能Key-Value存储与缓存利器什么是Redis?为什么选择Redis?Red

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I