2011-02-25 123 views
1

我有麻烦显示土耳其字符,他们出现在背景中的钻石在html中的小问号。修复土耳其语字符集问题Html/PHP(iconv?)

我该如何使用iconv来解决这个问题?既然我认为这是最好的选择权?现在我的页面是utf-8编码的。

我需要支持的字符,如

ı ñ ş

藏汉为能够将它们插入到我的分贝。

感谢

回答

4

使用

iconv("ISO-8859-1", "UTF-8", $text); 
0

虽然如果$文本包含一些土耳其字符一样,是一般真正的解决了这个问题,除非您的环境设置为在土耳其的区域合作“彻纳尔” translition将失败。

如果您可能需要在php中设置区域设置,如下所示;

setlocale(LC_ALL, 'tr_TR'); 
7

首先我试过了,UTF8编码 - 解码,失败, 更改的文件格式从ASCII到UTF-8, 再次尝试UTF编码, 更改的文件格式,几次都失败了。

然后我发现“iconv”,尝试失败。 使用“setlocale”更改语言环境。试过土耳其语,英语和其他类型,失败了。

最后我写了这个功能,我很高兴与输出:)

function transliterateTurkishChars($inputText) { 
    $search = array('ç', 'Ç', 'ğ', 'Ğ', 'ı', 'İ', 'ö', 'Ö', 'ş', 'Ş', 'ü', 'Ü'); 
    $replace = array('c', 'C', 'g', 'G', 'i', 'I', 'o', 'O', 's', 'S', 'u', 'U'); 
    $outputText=str_replace($search, $replace, $inputText); 
    return $outputText; 
} 
$goodText=transliterateTurkishChars($badText);