我想我在这方面有9000多个问题,我读了很多关于这方面和类似问题的文章,但我仍然无法在Postgre表中获得清晰的数据。
我有一个MySQL数据库,默认设置为utf-8,网站的字符集也设置为utf。但如果我查看DB,我会看到ДÐΜкор
。然而,网页上的输出是好的。
我现在知道,这是cp1252,它还没有设置(据我所见)。
如果我将数据传输到Postrgre,输出就像ДÐΜкор
,与MySQL相反,具有相同的数据和设置。
我尝试过的东西:
- 转储sql文件,重新创建数据库(确保它是utf),执行sql-没有结果
mysqldump dbname -u root -p --default-character-set=latin1 > dump.sql
-无结果- 我尝试过转换转储文件:
iconv -f cp1252 -t utf-8 dump.sql -> new.sql
-没有结果
我本来会发布这个问题的,但我已经在这上面浪费了很多时间,我确实需要
找到了一种转换所需内容的方法,很高兴数据库不是很大。通过以下功能完成:
mb_convert_encoding($model->text, 'cp1252', 'utf8')