这篇文章主要为大家详细介绍了php过滤掉emoji等无法存入MySQL数据库的字符简单示例,具有一定的参考价值,可以用来参考一下。

对php过滤掉emoji等无法存入MySQL数据库的字符简单示例感兴趣的小伙伴,下面一起跟随512笔记的小编巴闭妹来看看吧!

/**

*

* @param

* @arrange (512.笔记) www.512pic.com

**/

/**

*方法一:

*匹配中英文、以及数字等过滤掉emoji

*最后字符串中只剩下中英文、以及数字

*/

function delEmomji($str){

$pattern = '/[\w\x{4e00}-\x{9fa5}]+/u';

preg_match_all($pattern,$str,$matchs);

//遍历匹配结果

$result = '';

foreach($matchs[0] as $value){

$result.= $value;

}

return $result;

}

/**

*方法二:

* 直接删除法

* 由于单个emoji字符的长度为4个字节,而我们使用的MySQL数据的utf-8编码最长只支持3字节字符,

* 所以插入emoji表情时会报错,最终的解决方案是将MySQL的编码修改为utf8mb4。

*/

function filterEmoji($str)

{

$str = preg_replace_callback(

'/./u',

function (array $match) {

return strlen($match[0]) >= 4 ? '' : $match[0];

},

$str);

return $str;

}

注:关于php过滤掉emoji等无法存入MySQL数据库的字符简单示例的内容就先介绍到这里,更多相关文章的可以留意512笔记的其他信息。

关键词:

您可能感兴趣的文章

php过滤数据库就报错,php过滤掉emoji等无法存入MySQL数据库的字符简单示例相关推荐

  1. mysql的groupby原理是啥_mysql数据库groupby报错原理是什么?

    mysql数据库groupby报错原理是什么? 八一xiaobayi 2020-03-18 09:05:04 mysql> select count(9),floor(rand(0)*2) as ...

  2. SQL数据库挂起 SQL数据库附加报错 SQL数据库824错误修复

    SQL数据库挂起 SQL数据库附加报错 SQL数据库824错误修复 数据类型 MSSQL 2012 数据大小 4.5 GB 故障检测 附加数据库提示824错误 一般是由于断电非法关机导致页面损坏. 客 ...

  3. 数据库startup报错_SQL Server数据库恢复过程内部–数据库STARTUP命令

    数据库startup报错 A database recovery process is an essential requirement for database systems, It can be ...

  4. zabbix server下数据库日志报错

    数据库日志报错 postgres@ubuntu:~$ cat logfile FATAL: no pg_hba.conf entry for host "::1", user &q ...

  5. nodejs连接mysql数据库,报错Client does not support authentication protocol requested by server的解决方法

    nodejs连接mysql数据库,报错Client does not support authentication protocol requested by server的解决方法 参考文章: (1 ...

  6. oracle数据库启动报错ora-27102

    ORACLE启动报错 今天一大早来公司,发现数据库连不上了,重新启动报错 oracle数据库启动报错ora-27102,内存不足 查看操作系统参数: cat /etc/sysctl.conf 发现这里 ...

  7. 数据库查询报错Error Code 1064

    数据库查询报错Error Code 1064 原因是sql语句书写错误,里面的 '' 符号并不是单引号,而是键盘上的波浪号. 错误代码: SELECT * FROM 'test'.'user'; 正确 ...

  8. 数据库查询 报错 *****ORA-00918: 未明确定义列

    数据库查询 报错 *****ORA-00918: 未明确定义列:显然数据库不知道你写的列是指谁的列.一般单表查询不会出现这种错误,在多表联合查询的时候,在where 设定查询条件的地方,列名1=参数1 ...

  9. oracle报错1034,oracle数据库登陆报错ora-1034

    <oracle数据库登陆报错ora-1034>由会员分享,可在线阅读,更多相关<oracle数据库登陆报错ora-1034(1页珍藏版)>请在金锄头文库上搜索. 1.oracl ...

最新文章

  1. oracle之 手动创建 emp 表 与 dept 表
  2. Service Fabric独立集群搭建
  3. 智能音箱二战:国内Q1出货量5倍增长,BAX上屏、扩类、做家居
  4. WCF 第十三章 可编程站点 使用WebGet和WebInvoke
  5. 北京大学孙俊教授课题组深度视频研究室招收2021级博士生
  6. 四十三、ETL工具的流程和应用
  7. java swing 案例详解_《Java Swing图形界面开发与案例详解》PDF_IT教程网
  8. Stream学习过程中遇到的一个问题记录
  9. 第二章 XHTML简介
  10. 响应式设计PageAdmin个人博客系统源码v4.0.10
  11. STM32 - 定时器高级应用说明 - 多触波的实现 (N-pulse waveform generation using timer synchronization)- 01
  12. 实战 es6_Node.JS实战64:ES6新特性:Let和Const
  13. css3 中background的新增加的属性的用法(一)
  14. Swift 全功能的绘图板开发
  15. ubuntu python3 mysql_ubuntu14.04 python3.*连接mysql
  16. jQuery-实例方法
  17. 手游:cocos2d-x3.0 移植 wp8 开发 各种 “蛋疼”问题的汇总
  18. graphpad做单因素方差分析_GraphPad中国官网 - Prism 8 统计指南 - 单因素方差分析
  19. ubuntu16.04安装翻译软件stardict
  20. 【高等数学】定积分的应用

热门文章

  1. html5音轨字幕,(图解)如何修改mkv默认音轨和字幕
  2. android+apk+修改+签名文件位置,Jenkins打包android应用时自动签名apk详解
  3. c++ iou学习笔记
  4. 1500+ FPS!目前最快的CNN人脸检测算法开源
  5. gevent -1073740791
  6. vs编译cuda DLL
  7. requests模块--python发送http请求
  8. K-Means聚类算法进行压缩图片
  9. 找不到org.springframework.dao.support.DaoSupport的类文件
  10. linux 内核信号量与用户态信号量(system v,信号量在Linux多线程机制中的应用