gpt4 book ai didi

database - 编码问题 : £ pound symbol appearing as 符号

转载 作者:搜寻专家 更新时间:2023-10-30 20:06:35 26 4
gpt4 key购买 nike

我的数据库字段设置为 utf8_general_ci,我的网站编码为 utf8。

£ 符号以黑色菱形出现,中间有一个问号。

我尝试在数据库中将其更改为 £ 并且它只是输出了 £

我尝试了一个字符串替换:

  $row['Information'] = str_replace("£", "£", $row['Information']);

似乎没有任何效果,有什么想法吗?

最佳答案

I tried changing it to £ in the database

不要。数据库应该包含原始文本,绝不是 HTML 编码的内容。 HTML 编码(使用 htmlspecialchars() )的时间是在输出模板阶段将一些原始文本插入 HTML 时,而不是之前。即使你让它工作,你也只有一个固定的角​​色;其他 107025 个非 ASCII 字符仍会中断。

显然这里的编码不匹配;您必须确保在任何地方都使用相同的编码(最好是 UTF-8),特别是:

  • 保存 PHP 文件的编码,如果它包含任何非 ASCII 字符;
  • 在输出页面上声明的字符集(通过 Content-Type <meta>header(),最好是两者;如果您只使用 <meta> 来设置它并且服务器配置不正确,它可能会设置自己的 charset 覆盖您的);
  • 数据库中列的编码(每个列都有自己的排序规则,所以只在表上设置是无效的);
  • PHP 用来与 MySQL 对话的编码。这应该使用 mysql_set_charset 设置。

不幸的是,这些设置都没有默认为 UTF-8。

关于database - 编码问题 : £ pound symbol appearing as <? > 符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3716178/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com