不间断空格的坑:ASCII:\u00A0
Office软件或Wps软件,都支持一个特殊字符:不间断空格(ctrl + shift + 空格)再转换为utf-8时成了xC2 0xA0,对应的ASCII:\u00A0。但分发到第三方平台时,这个特殊字符不能被正确识别,导致分发异常.
https://fuhaoku.net/U+00A0:查询字符对应的ascii和utf-8编码
看着:iQIYI 爱奇艺|萌探2024|精选频道 萌探2024 卡段
转到text就成了?
在线转ASCII码:https://www.sojson.com/ascii.html
解决方案:把这个不间断空格转换成统一的英文空格。
【解决空格乱码或者空格编码格式不正确的相关问题 – CSDN App】http://t.csdnimg.cn/15FKv
在于UTF-8这种编码里面,存在一个特殊的字符,其编码是“0xC2 0xA0”,转换成字符的时候,表现为一个空格,和普通的半角空格“ ”(ASCII码:0x20)一样,唯一的不同是它的宽度不会被压缩,因此常常用于网页排版(如首行缩进)。而GB2312、Unicode之类的编码并没有这个字符,因此UTF-8转码后,这个字符就会被替换成为问号。
php代码:
$description=str_replace(chr(0xC2).chr(0xA0),” “,$description);
或:
$description=str_replace(chr(194).chr(160), ‘ ‘, $description);
$a = ‘iQIYI 爱奇艺‘;
$b = ‘iQIYI 爱奇艺‘;
$c = str_replace(chr(0xC2).chr(0xA0),” “,$a);
dd(json_encode($a), json_encode($b), $c, json_encode($c));