2

西班牙语特殊字符显示不正确,像“Árbol”这样的词显示为“�bol”。

1) 数据库中的文本保存正确。'Árbol' 在数据库中看起来很完美。

2)如果我插入一个新词,例如。'Tétrico',它已正确保存在数据库中。

自从我将项目移动到另一台服务器后,我一直遇到这个问题,在 localhost(Ubuntu 服务器)上运行完美。

我已经尝试了所有阅读类似问题的方法:

  • 视图文件以 UTF-8 编码,没有 BOM。
  • header('内容类型: text/html; charset=utf-8');
  • 在 my.cnf 中,我添加了以下行:

    init_connect='设置名称 utf8'

    character_set_server=utf8

它只是行不通。

我还可以做些什么?

我已经将我在 localhost 上所做的更改(因为项目在这里完美运行,一切都正确显示)复制到新服务器,但没有任何改变。

4

1 回答 1

6

我不完全确定为什么,但我在 html 视图中有这个但它不起作用。

header('Content-Type: text/html; charset=utf-8');

通过阅读这篇文章,我找到了另一个答案:

如何在 PHP 中显示特殊字符

所以我不得不更改html文件的标题。我把这一行:

header('Content-Type: text/html; charset=ISO-8859-1');

它现在完美无缺。

于 2013-11-04T21:21:16.943 回答