1

我试图让 Doctrine2 在 debian 挤压系统上的 Symfony2 中与 mysql db 一起正常工作。数据库的字符集和排序规则设置为 utf8 和 utf8_general_ci,数据库是通过读取 sql 脚本手动创建的。

现在,我为其中一张带有丹麦特殊字符(如 æøå)的表输入了一些值,但它们根本无法正确显示。

我的 parameters.yml 设置了 encoding: utf8 并且在我的 config.yml 中,学说配置具有:

doctrine:
    dbal:
        driver:   %database_driver%
        host:     %database_host%
        port:     %database_port%
        dbname:   %database_name%
        user:     %database_user%
        password: %database_password%
        charset:  UTF8

当我在 mysql 控制台中进行选择时,字符会正确显示,并且如果我尝试用 som 硬编码值替换控制器中的输出数组,那么问题似乎肯定是由于教义 2 配置中的某种错误/错误造成的。 ..

有人对如何解决这个问题有任何线索吗?

非常感谢。

4

2 回答 2

2

好的,我终于想通了……这种配置有某种双重编码。注释掉 charset: UTF8 from dictionary dbal config 解决了这个问题。

于 2013-04-28T20:52:26.943 回答
0

问题可能出在您的应用程序字符集中。它可以在 config.yml 中找到

framework:
  charset:         UTF-8
  #translator:      { fallback: lt }
  #secret:          %secret%
  #other options
于 2013-04-28T09:53:17.413 回答