我一直在使用iconv
将数据从我公司的数据库 ( windows-1250
) 转换为UTF8
. 直到最近,这一切都很好。
我不太确定发生了什么,因为我最近才注意到这种变化。问题是它iconv
似乎停止工作 - 当我使用错误的编码名称时它仍然会引发通知。
早些时候,当我将字符串保存到数据库时
htmlspecialchars(iconv('UTF-8', 'windows-1250', $string), ENT_QUOTES)
很好。现在只有问号被写入我的数据库而不是 eg ąęś
。
PL/SQL Developer
当我通过 php更正它们并阅读它们时:htmlspecialchars_decode(iconv('windows-1250', 'UTF-8', $string), ENT_QUOTES)
我收到aes
。我试图在字符串输出之前在 php 中设置编码:
header('Content-Type: text/html; charset=utf-8');
,但没有帮助。
我的软件是:
PHP 5.3.15 (cli)
iconv (GNU libc) 2.15
Apache/2.2.22
openSUSE 12.2
Oracle 10.2.0.4
oci