PHP: 如何去掉"\u00a0"这样的奇怪字符?
PHP: How to get rid of strange characters like "\u00a0"?
我有一堆乱七八糟的 JSON 数据要导入我的数据库(用于进一步的目的)。当我检查它们时(在文本编辑器中打开),它们包含许多奇怪的(乱码)字符,例如:
- \u00a0
例如,data.json
:
[{"title":"hello world!","html_body":"<p>Hello\u00a0 from the\u00a0 other side.\u00a0 <\/p>"}]
然后,显然,下面的代码根本行不通:
$clean = str_replace("\u00a0", "", $string);
不管这些字符是干什么用的,我怎样才能摆脱它们?
感谢评论区的每个人,(至少) 帮助我知道这些是 non-breaking characters
。然后我用谷歌搜索并找到了一个可行的解决方案:
$clean_html_body = preg_replace('/\xc2\xa0/', '', $html_body);
再次感谢大家。 :)
如果您的单个字符串可能有不间断的空格或行 returns 在它们的末尾,您可以 trim 这些在将 JSON 数据放在一起时使用这个:
$dat = trim($dat,"\t\n\r[=14=]\x0B\xc2\xa0");
我有一堆乱七八糟的 JSON 数据要导入我的数据库(用于进一步的目的)。当我检查它们时(在文本编辑器中打开),它们包含许多奇怪的(乱码)字符,例如:
- \u00a0
例如,data.json
:
[{"title":"hello world!","html_body":"<p>Hello\u00a0 from the\u00a0 other side.\u00a0 <\/p>"}]
然后,显然,下面的代码根本行不通:
$clean = str_replace("\u00a0", "", $string);
不管这些字符是干什么用的,我怎样才能摆脱它们?
感谢评论区的每个人,(至少) 帮助我知道这些是 non-breaking characters
。然后我用谷歌搜索并找到了一个可行的解决方案:
$clean_html_body = preg_replace('/\xc2\xa0/', '', $html_body);
再次感谢大家。 :)
如果您的单个字符串可能有不间断的空格或行 returns 在它们的末尾,您可以 trim 这些在将 JSON 数据放在一起时使用这个:
$dat = trim($dat,"\t\n\r[=14=]\x0B\xc2\xa0");