从ISO-8859-2转换为UTF-8

时间:2014-01-01 12:46:41

标签: php unicode utf-8

我正在尝试将以下字符串从ISO-8859-2转换为UTF-8但未正确转换。

$content = 'Mieszkanie dla Młodych. Od dziś kredyty z pomocą państwa';
$xy = utf8_encode($content);
echo $xy;
Output - Mieszkanie dla MÅodych. Od dziÅ kredyty z pomocÄ paÅstwa

我无法理解出了什么问题。 任何一位转换专家都可以请你分享一些想法。

我可能在这里遗漏了一些东西。

谢谢

更新: - 我尝试了iconv但是也没有用

iconv("ISO-8859-2", "UTF-8", $content);
iconv("ISO-8859-2", "UTF-8//TRANSLIT", $content);
iconv("ISO-8859-2", "UTF-8//IGNORE", $content);

Output - Mieszkanie dla MĹodych. Od dziĹ kredyty z pomocÄ paĹstwa

1 个答案:

答案 0 :(得分:1)

使用iconv进行转化。它提供OriginalTRANSLITPlainIGNORE。我猜您需要尝试所有以获得所需的输出

<?php
$text = "This is the Euro symbol '€'.";

echo 'Original : ', $text, PHP_EOL;
echo 'TRANSLIT : ', iconv("ISO-8859-2//TRANSLIT", "UTF-8" ,$text), PHP_EOL;
echo 'IGNORE   : ', iconv("ISO-8859-2//IGNORE","UTF-8",  $text), PHP_EOL;
echo 'Plain    : ', iconv("ISO-8859-2","UTF-8",  $text), PHP_EOL;

?>