如何在PHP中解码格式错误的字符串

时间:2012-08-29 21:12:26

标签: php iconv

我有一个充满编码错误的数据库,并且在尝试反向查找原始数据时不知所措。

这是土耳其的样本地址。

M�¼ze M�¼d�¼rl�¼�Ÿ�¼
Konyalt�± Cad.
Muratpa�Ÿa
Antalya

更新

问题是双重的。

  1. 原始latin1_swedish_ci表格中的字符已损坏。即字符落在字符集之外。
  2. 在phpMyAdmin导出/导入期间双重utf-8编码。
  3. 后者的解决方案似乎是:

    $str = str_replace('?', chr(194).chr(131), $str);
    $str = utf8_decode(utf8_decode($str));
    

    这并没有解决原始的腐败问题,即@cleong

    建议丢失了编码信息

1 个答案:

答案 0 :(得分:2)

我假设您的数据库是MySQL。您是否更新了编码并尝试?首先检查一下你是否可以正确地在MySQL内部显示它。将encoding / collat​​ion设置为UTF-8,使用phpmyadmin或MySQL CLI进行查询,并检查其外观。