我正在通过脚本将一个数据库转换为另一个数据库。
运行脚本时出现以下错误:
\
抛出异常,表示它尝试将国家/地区设置为“\ xcf \ xbb \ xbf \ x62 \ x61 \ x6e \ x67 \ x6c \ x61 \ x64 \ x65 \ x73 \ x68”。
当我var_dump该值时,它只显示为“孟加拉国”。
我的PHP代码中是否有必要调整的内容?
我已经尝试了this,但是phpmyadmin正在抛出#1064错误,指出查询中存在语法错误。
更新
脚本是Symfony3中的一个命令:
SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xBFbangl...' for column 'country' at row 1
答案 0 :(得分:2)
\x62\x61\x6e\x67\x6c\x61\x64\x65\x73\x68
是Bangladesh
;之前的\ xcf \ xbb \ xbf毫无意义。在latin1中,它是Ï»¿
。它无法有效转换为utf8。 CFBB
是ϻ
(GREEK SMALL LETTER SAN),但后来bf
被破坏了utf8。
我建议它来自数据来源。
var_dump可能没有显示任何内容,因为你在显示它的设备。
答案 1 :(得分:1)
好几天尝试之后就做了诀窍:
$ country = iconv(“UTF-8”,“ISO-8859-1 // IGNORE”,$ country);
我不知道为什么它首先出错了。如果有人知道,请分享。