在Symfony2中使用Doctrine2保留utf-8数据

时间:2011-11-01 16:36:53

标签: mysql utf-8 doctrine-orm symfony

我正在尝试使用Doctrine2和Symfony 2来保存我从MySQL数据库中的表单获得的一些数据。我的问题是这个数据是希腊语,尽管数据库和字段的排序是utf8_general_ci它是Doctrine2没有正确存储这些字符。

我已经检查过这个字符在我的映射类中是正确的,所以我猜问题是我的Doctrine配置。关于它可能是什么的任何想法?

2 个答案:

答案 0 :(得分:6)

我自己弄清楚了。我不得不将Doctrine Dbal设置为utf8。为此,我只需要将以下内容添加到我的config.yml:

doctrine:
    dbal:
      //rest of the configuration 
      charset:  utf8

答案 1 :(得分:1)

您还需要my.cnf中的以下条目:

collation-server = utf8_general_ci 
character-set-server = utf8