【问题标题】:php import utf-8 txt file to latin1 databasephp 将 utf-8 txt 文件导入到 latin1 数据库
【发布时间】:2010-03-24 12:22:15
【问题描述】:

我有一个 UTF-8 编码的 txt 文件,我想将它导入到 latin1_general_ci 表。 问题是某些字符显示为?在数据库中,而不是他们应该的。

我试过 mb_convert_encoding($str, "ISO-8859-1", "UTF-8");但这并没有做任何事情。

我做错了什么?

【问题讨论】:

    标签: php mysql utf-8


    【解决方案1】:

    Latin1 不包括所有 Unicode 字符。您可以使用 iconv() 和 //TRANSLIT 选项将未知字符音译为其最接近的 latin1 等价物:

    iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text)
    

    【讨论】:

    • 您可能还想确定是否需要为 MySQL 转义文本。
    【解决方案2】:

    我使用utf8_decode,它对我有用。

    【讨论】:

      【解决方案3】:

      您可以将它们转换为二进制,然后再将其转换回拉丁文

      insert into table values 
      (convert(binary convert(data using utf8) using latin1))
      

      【讨论】:

        猜你喜欢
        • 2011-12-18
        • 1970-01-01
        • 1970-01-01
        • 2021-02-23
        • 2011-05-06
        • 2012-11-16
        • 2012-11-22
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多