我正在尝试使用Doctrine2和Symfony 2将表单中获取的一些数据持久化到MySQL数据库中。我的问题是,这些数据是希腊语,并且尽管数据库和字段的排序规则为utf8_general_ci,但Doctrine2并未正确地存储这些字符。
我已经检查过我的映射类中这些字符是否正确,所以我猜测问题出在我的Doctrine配置上。有什么想法吗?
我正在尝试使用Doctrine2和Symfony 2将表单中获取的一些数据持久化到MySQL数据库中。我的问题是,这些数据是希腊语,并且尽管数据库和字段的排序规则为utf8_general_ci,但Doctrine2并未正确地存储这些字符。
我已经检查过我的映射类中这些字符是否正确,所以我猜测问题出在我的Doctrine配置上。有什么想法吗?
我自己想通了。我需要将Doctrine Dbal设置为utf8。为此,我只需在我的config.yml文件中添加以下内容:
doctrine:
dbal:
//rest of the configuration
charset: utf8
collation-server = utf8_general_ci
character-set-server = utf8