【问题标题】:utf8_encode and accented characters dilemma?utf8_encode 和重音字符的困境?
【发布时间】:2011-07-26 12:25:24
【问题描述】:

我在使用utf8_encode decode 进行解码时遇到了一个悖论。我有一个带有 uft8 排序规则的 MySQL 数据库,其字段具有 utf8_general 编码。我在 utf8 中有我的 php 文件,在我的 HTML 页面中,我在标题中指定了 utf8 字符集。

我的问题是,当我从表中选择一个包含重音字符的字段(如 èçòùé)并将其回显到浏览器时,我得到了奇怪的字符。

要解决我的问题,我必须回显$description=utf8_encode($imm['description'])

我的问题是,为什么不用每次都使用uft8_encode 就不能直接回显?

【问题讨论】:

    标签: php mysql encoding utf-8 diacritics


    【解决方案1】:

    我只是猜测您的数据库连接未设置为 UTF-8。
    SET NAMES utf8 in MySQL?

    【讨论】:

      【解决方案2】:

      您需要使用 php 指定标头为 utf-8。在存储到数据库之前还要确保字符的格式是 utf-8,因为 utf_encode 将 ISO-8859-1 字符串编码为 UTF-8,这很可能意味着字符被存储为 ISO-8859-1 sa utf-8 表。

      确保将这些字符转换为 utf-8 格式,然后再将它们存储到数据库中,然后 echo 根本不成问题。

      来源:我自己也有同样的问题。

      【讨论】:

        猜你喜欢
        • 2013-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-23
        • 1970-01-01
        • 2021-12-02
        • 2017-06-07
        • 1970-01-01
        相关资源
        最近更新 更多