【问题标题】:Portuguese charset problem葡萄牙语字符集问题
【发布时间】:2011-09-12 10:52:18
【问题描述】:
我对这该死的字符集感到头疼。
葡萄牙语字符集=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
【问题讨论】:
标签:
php
html
codeigniter
character-encoding
【解决方案1】:
Eclipse 中文件的编码设置为什么?右键单击 Eclipse 中的文件,在“属性”下检查。它必须与您的元标记中的相同。
【解决方案2】:
非常感谢,我相信你的回答是最好的:
$string = 'café';
utf8_decode($string);
或
$string = 'café';
utf8_encode($string);
在每个文件的标题中添加元字符集,葡萄牙字符的问题将得到解决。
【解决方案4】:
我会先查看浏览器中的默认字符集,它可以设置为 ISO-8859-15 或 UTF8。我的浏览器编码设置为 ISO-8859-1 而不是 UTF8 时遇到了相反的问题。
其次,这些数据是静态的还是来自数据库?例如,如果来自 mySQL,请检查数据库的排序规则,它是 latin1 还是 utf8?
如果来自 UTF8 整理数据库(或者不是 - 因为您使用的是 PHP),您可以尝试
$string = 'café';
utf8_decode($string);
或
$string = 'café';
utf8_encode($string);
迁移到 UTF8 可能是一个好主意,因为 PHP 的 utf8_encode() 和 utf8_decode() 之类的函数但如果它不适合您的市场,那就是这样。
如果 utf8_encode 或 utf8_decode 函数有效,您应该查看您的输入法和输入编码,因为您可能会在那里发现问题。
附:我在巴西时常遇到同样的问题......我觉得你的痛苦伴侣!
【解决方案5】:
在这里试试这个:
$string = 'café';
htmlentities($string, ENT_COMPAT, 'utf-8');
保重!
【解决方案6】:
转到项目资源管理器中的资源包,然后右键单击该文件并将字符集更改为 utf=8,然后保存设置。