首页 > Web开发 > 详细

PHP导出带有emoji表情的文本到excel文件出问题了

时间:2019-10-10 17:16:56      阅读:278      评论:0      收藏:0      [点我收藏+]

前段时间做了一个导出用户信息(包含微信昵称)到excel文件的功能,一直没问题,今天突然有人反馈说导出来的数据有一些丢失了。我试了一下,发现有些数据导出没问题,有些有问题,某些列出现了空白,数据打印出来是没问题的,但是输出到excel文件中就出问题了。因为打开导出的excel文件的时候提示存在无法读取的内容,所以我猜想可能是数据中存在某些特殊字符导致的。不断缩小导出的数据范围进行重试后,终于锁定了问题,原来是用户的微信昵称中出现emoji表情导致的,将其过滤掉再导出就好了。

emoji表情过滤函数:

/**
* 过滤文本中的emoji表情包(输出到excel文件中会导致问题)
* @param string $text 原文本
* @return string 过滤emoji表情包后的文本
*/
function removeEmoji($text){
	$len = mb_strlen($text);
	$newText = ‘‘;
	for($i=0;$i<$len;$i++){
		$str = mb_substr($text, $i, 1, ‘utf-8‘);
		if(strlen($str) >= 4) continue;//emoji表情为4个字节
		$newText .= $str;
	}
	return $newText;
}

  

PHP导出带有emoji表情的文本到excel文件出问题了

原文:https://www.cnblogs.com/wujuntian/p/11649036.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!