如何在PHP中将“é”转换为“é”?

时间:2018-04-10 14:15:22

标签: php encoding

我正在尝试将此字符串转换为:“é”到此:“é”。这是一个latin1角色,但我做不到。到目前为止,我已经尝试了两个函数,但没有一个给我正确的输出。

$translation = 'Copà © rnico was Italian';
$translation = mb_convert_encoding($translation, 'utf-8', 'iso-8859-1'); //opt 1
$translation = iconv('utf-8', 'latin1', $translation); //opt 2

我从Api获取这些数据,所以我不知道数据库中发生了什么。 这是西班牙语中的字符串:Copérnicosenes。 这是来自API的数据:Copérnico是意大利语 这是$ translation = bin2hex($ translation)的结果; 436f70c38320c2a920726e69636f206973204974616c69616e

什么是正确的方法?问候。

1 个答案:

答案 0 :(得分:1)

我之前有同样的问题,并且这个选项

$translation = iconv('utf-8', 'latin1', $translation); //opt 2
工作很好。 您的问题是`Copérnico是意大利语``Copérnico是意大利语`不同。

因此,当您尝试转换函数 iconv 时,会看到2个错误的UTF-8符号,因为de空格是不相同的“ é”(2个无效的UTF-8符号和比“ é”(2个空格)(1个有效的UTF-8符号)