[英]Converting odd character encoding back to utf-8
我有一个充满字符串的数据库,其中包含奇怪的字符,例如:
Design Tattoo Ãœbungshaut
Mehrflächiges Biozid Reinigungs- & Desinfektionsmittel
当Ãœ
和ä
应该是,按照我的理解,一个Ü
和Ã
时在适当的UTF-8
是否有标准功能将这些多个字符还原为正确的UTF-8
格式?
在PHP
我遇到了$url = iconv('utf-8', 'iso-8859-1', $url);
似乎接近但不足。 也许我输入了错误的参数,但是无论如何,我只是想知道这个问题的认识程度,以及是否有已确定的解决方案?
原始数据来自电子商务系统CubeCart
,将其转换回普通文本FYI似乎没有问题。
作为示例显示的数据是被UTF-8编码的数据错误地解释为ISO-8859-1(或Windows-1252)。 问题组合实际上是“Ü”和“ä”(德语中没有出现“Ā”)。 因此,显然您需要做的是将数据读取为UTF-8并以这种方式显示,而不是对其进行转换。
如果数据库和输出是utf-8,则可能是因为您没有使用utf-8作为客户端字符集。
如果使用mysqli,则可以在获取数据之前使用set_charset或运行SET NAMES utf8
作为查询。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.