葡萄牙语charset问题

时间:2011-06-10 11:48:14

标签: php html codeigniter character-encoding

该死的charset我很头疼。

葡萄牙语charset = iso-8859-1

在我的HTML上我有:

<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1" /> 

在我的config.php上:

$config['charset'] = 'ISO-8859-1'; 

我有‘café’, coffee.

这个词

显示如下:cafŽ.

有什么想法吗?!

提前感谢您提供任何帮助

**修改

我不知道这是否重要,但我正在使用Eclipse

6 个答案:

答案 0 :(得分:3)

Eclipse中文件的编码设置为什么?右键单击Eclipse中的文件,在“属性”下检查。它必须与元标记中的相同。

答案 1 :(得分:2)

非常感谢,我相信你的答案是最好的答案:

$string = 'café'; 
utf8_decode($string); 

OR

$string = 'café'; 
utf8_encode($string);

在每个文件的标题中使用meta charset,将解决portugues字符的问题。

答案 2 :(得分:1)

为什么不切换到UTF-8?

编辑您可能还想切换到使用实体。

&eacute;将是é

http://www.w3schools.com/tags/ref_entities.asp

答案 3 :(得分:1)

我首先会在浏览器中查看默认字符集,它可以设置为ISO-8859-15或UTF8。我有一个相反的问题,我的浏览器编码设置为ISO-8859-1而不是UTF8。

其次这个数据是静态的还是来自数据库?例如,如果它来自mySQL,请检查数据库的排序规则,是latin1还是utf8? 如果来自UTF8整理数据库(或者不是 - 因为您正在使用PHP),您可以尝试

$string = 'café';
utf8_decode($string);

OR

$string = 'café';
utf8_encode($string);

转移到UTF8可能是一个好主意,因为像PHP这样的函数utf8_encode()和utf8_decode()但是如果它不适合您的市场那么就是这样。

如果utf8_encode或utf8_decode函数有效,您应该查看输入法和输入编码,因为您可能会在那里发现问题。

P.S。我不时在巴西遇到同样的问题...我觉得你的痛苦伴侣!

答案 4 :(得分:0)

在这里试试这个:

$string = 'café';
htmlentities($string, ENT_COMPAT, 'utf-8');

小心!

答案 5 :(得分:0)

转到项目资源管理器中的资源包,然后右键单击该文件并将char set更改为utf = 8,然后保存设置。