gpt4 book ai didi

php - mysql utf8字符问题

转载 作者:行者123 更新时间:2023-11-29 05:42:51 27 4
gpt4 key购买 nike

我在页面中将所有字符集设置为“utf8”,在数据库中将所有排序规则(也包括字段排序规则)设置为utf8_general_ci,并将此代码添加到connect.php

mysql_set_charset('utf8',$connect);
mysql_query("SET NAMES 'utf8'");

虽然一切都是 utf,当我运行这个查询时:

“SELECT * FROM titles WHERE title='toruń'”

结果:它返回“toruń”和“torun”,这是不同的词。

那你怎么看?
有什么问题?

谢谢!

编辑:

如果不存在则创建表 标题
(
id int(11) NOT NULL AUTO_INCREMENT,
title varchar(255) NOT NULL,
主键 (id),
KEY title (title),

) ENGINE=MyISAM 默认字符集=utf8 AUTO_INCREMENT=37 ;

最佳答案

问题是您选择的排序规则旨在忽略该特定重音(并且很可能是一般重音)。

如果您希望存储一种特定的语言,而不是多种不同的语言,请尝试使用 utf8_(language)_ci(如果该语言不存在,则可能存在另一种语言跟你的一样)。否则,您可以尝试使用 Unicode 归类算法的 utf8_unicode_ci,但我不确定它是否能区分这一点。

您也可以使用 utf8_bin,这可以保证将它们视为不同,但这是以丢失大小写不敏感为代价的,这很可能更糟。

话虽如此,这不一定是坏事:通过忽略重音符号,搜索将更加灵活,并且对于无法输入特定字符的人来说更易于使用。

关于php - mysql utf8字符问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5264622/

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