使用codeigniter - 为什么欧洲字符没有正确显示?

时间:2011-04-13 10:49:40

标签: php codeigniter character-encoding

当我将带有特殊字符的字符串传递给我的视图时,特殊字符显示为问号,例如:

$data['make']  = 'Quels pneus Dunlop avez-vous acheté ?';

$this->load->view("form", $data);

在我看来,这看起来如下:

enter image description here

当我直接在HTML页面中输入字符时,它们显示正常。我该如何解决这个问题?

编辑:字符集已设置为:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

3 个答案:

答案 0 :(得分:1)

使用codeigniters ascii_to_entities函数就可以了。

$this->load->helper('text');
ascii_to_entities($string);

答案 1 :(得分:0)

看起来它可能是一个charset冲突。将您的HTML字符集声明UTF8并将数据保存为数据库或文本文件中的UTF8。

<head>标记中:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

如果您使用htmlentities()输出数据var,那么请考虑在那里指定字符集。

echo htmlentities($str, ENT_COMPAT, 'UTF-8');

答案 2 :(得分:0)

将您的视图页面保存为utf8,这将完成工作